网易严选商城前端实现-vue

简介: 网易严选商城前端实现-vue

项目展示


菜单栏展示


 

轮播图页面


 

新鲜好物页面


人气推荐


美食模块


核心代码

路由配置


1. import {
2.   createRouter,
3.   createWebHashHistory
4. } from 'vue-router'
5. import Layout from '@/views/Layout.vue'
6. import Home  from '@/views/Home/Home.vue'
7. const Login = () => import('@/views/Login.vue')
8. const Category = () => import('@/views/Category/Category.vue')
9. const Commodity = () => import('@/views/commodity/Commodity.vue')
10. const routes = [{
11. path: '/',
12. name: 'Layout',
13. component: Layout,
14. children:[
15.       {
16. path:'/',
17. component:Home
18.       },{
19. path:'/category/:id',
20. component:Category
21.       },{
22. path:'/commodity',
23. name: 'commodity',
24. component:Commodity
25.       }
26.     ]
27.   }, {
28. path: '/login',
29. component: Login
30.   }
31. 
32. ]
33. 
34. const router = createRouter({
35. // Hash模式
36. history: createWebHashHistory(),
37.   routes
38. })
39. 
40. export default router

主页面


1. <template>
2. <div class="home w">
3. <!-- 轮播图 -->
4. <HomeBanner/>
5. 
6. <!-- 新鲜好物 -->
7. <HomeNew />
8. <!-- 人气推荐 -->
9. <HomeHot />
10. <!-- 产品区块 -->
11. <HomeProduct />
12. 
13. </div>
14. </template>
15. 
16. <script>
17. import HomeBanner from './HomeBanner.vue'
18. import HomeNew from './HomeNew.vue'
19. import HomeHot from './HomeHot.vue'
20. import HomeProduct from './HomeProduct.vue'
21. export default {
22. components:{
23. HomeBanner,
24. HomeNew,
25. HomeHot,
26. HomeProduct
27.     }
28. };
29. </script>
30. 
31. <style lang="less" scoped>
32. </style>

数据层展示


1. const express = require('express');
2. // 引入轮播图数据
3. const bannerData=require('../data/banner.json')
4. const hotData=require('../data/hot.json') //人气推荐
5. const productData =require('../data/product.json') //产品区块
6. 
7. const router = express.Router();
8. 
9. 
10. // 测试接口
11. router.get('/test', (req, res) => {
12.     res.send('测试成功');
13. })
14. 
15. /**
16.  * 首页轮播图
17.  */
18. router.get('/home/banner',(req,res)=>{
19.     res.send(bannerData)
20. })
21. 
22. /**
23.  * 首页-人气推荐
24.  */
25.  router.get('/home/hot',(req,res)=>{
26.     res.send(hotData)
27. })
28. 
29. 
30. /**
31.  * 首页-产品区块
32.  */
33.  router.get('/home/product',(req,res)=>{
34.     res.send(productData)
35. })
36. 
37. module.exports = router;

跨域请求


1. const path = require('path');
2. 
3. const {
4.     defineConfig
5. } = require('@vue/cli-service')
6. module.exports = defineConfig({
7. transpileDependencies: true,
8. 
9. pluginOptions: {
10. 'style-resources-loader': {
11. preProcessor: 'less',
12. patterns: [
13.                 path.join(__dirname, './src/assets/styles/variables.less'),
14.                 path.join(__dirname, './src/assets/styles/mixins.less')
15.             ]
16.         }
17.     },
18. //跨域请求
19. devServer: {
20. proxy: {
21. '/api': {
22. target: 'http://you.163.com', //网易新闻接口
23. ws: true,
24. changeOrigin: true,
25. pathRewrite: { //重写路径
26. '^/api': ''
27.                 }
28.             },
29. '/foo': {
30. target: 'http://localhost:7788', //本地接口
31. ws: true,
32. changeOrigin: true,
33. pathRewrite: { //重写路径
34. '^/foo': ''
35.                 }
36.             }
37.         },
38.     }
39. })
目录
相关文章
|
1月前
|
缓存 JavaScript 前端开发
前端vue的性能优化都有那些方式?
【4月更文挑战第8天】 Vue.js 性能优化技巧包括:路由懒加载,按需加载路由以加快页面加载;组件优化,如用`v-show`替换`v-if`,使用计算属性代替方法;虚拟滚动提升大数据列表性能;图片优化,如使用懒加载;减少不必要的重渲染,借助`v-once`或`shouldComponentUpdate`;以及考虑使用服务端渲染(SSR)提升首屏加载速度。注意平衡优化与代码复杂性之间的关系。
29 0
|
21天前
|
缓存 安全 JavaScript
前端安全:Vue应用中防范XSS和CSRF攻击
【4月更文挑战第23天】本文探讨了在Vue应用中防范XSS和CSRF攻击的重要性。XSS攻击通过注入恶意脚本威胁用户数据,而CSRF则利用用户身份发起非授权请求。防范措施包括:对输入内容转义、使用CSP、选择安全的库;采用Anti-CSRF令牌、同源策略和POST请求对抗CSRF;并实施代码审查、更新依赖及教育团队成员。通过这些实践,可提升Vue应用的安全性,抵御潜在攻击。
|
2天前
|
存储 JavaScript 前端开发
使用Vue.js构建交互式前端的技术探索
【5月更文挑战第12天】Vue.js是渐进式前端框架,以其简洁和强大的特性深受开发者喜爱。它聚焦视图层,采用MVVM模式实现数据与视图的双向绑定,简化开发。核心特性包括响应式数据绑定、组件化、模板系统和虚拟DOM。通过创建Vue实例、编写模板及定义方法,可以构建交互式前端,如计数器应用。Vue.js让复杂、交互式的前端开发变得更加高效和易维护。
|
3天前
|
JSON JavaScript 前端开发
vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户
vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户
|
3天前
|
JSON JavaScript 前端开发
vue前端运行时出现RangeError: Maximum call stack size exceeded
vue前端运行时出现RangeError: Maximum call stack size exceeded
12 4
|
5天前
|
JavaScript 前端开发
vue前端展示【1】
vue前端展示【1】
8 1
|
12天前
|
JSON JavaScript Java
从前端Vue到后端Spring Boot:接收JSON数据的正确姿势
从前端Vue到后端Spring Boot:接收JSON数据的正确姿势
22 0
|
14天前
|
前端开发 JavaScript 开发者
【专栏:HTML与CSS前端技术趋势篇】前端框架(React/Vue/Angular)与HTML/CSS的结合使用
【4月更文挑战第30天】前端框架React、Vue和Angular助力UI开发,通过组件化、状态管理和虚拟DOM提升效率。这些框架与HTML/CSS结合,使用模板语法、样式管理及组件化思想。未来趋势包括框架简化、Web组件标准采用和CSS在框架中角色的演变。开发者需紧跟技术发展,掌握新工具,提升开发效能。
|
15天前
|
JSON JavaScript 前端开发
前端框架vue的样式操作,以及vue提供的属性功能应用实战
前端框架vue的样式操作,以及vue提供的属性功能应用实战
|
15天前
|
JavaScript 前端开发 数据安全/隐私保护
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(二)
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(二)