2020年是一个不平凡的一年,受疫情影响就业压力变大。企业对技术的要求更高。现在企业面试中对于VUE的要求不在仅仅只是知道全家桶,而更多是VUE项目实战,拿到一个项目如何从脚手架搭建、到项目结构的部署、到具体模块的开发......针对vue项目我今天整理了一套【webAPP商城实战项目】,话不多话,直接上项目效果图和具体代码,效果图如下:

2020,前端VUE面试都问了什么?_java


2020,前端VUE面试都问了什么?_java_02


01
第一部分:vue-cli脚手架的搭建



一、安装node.js

进入官网下载node.js

2020,前端VUE面试都问了什么?_java_03  


二、安装cnpm1、说明:npmnode package manager)是nodejs的包管理器,用于node插件管理(包括安装、卸载、管理依赖等);2、使用npm安装插件:命令提示符执行npm install <name>3选装cnpm  因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队干了这事!来自官网:“这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。”; 安装:npm install -g cnpm --registry=https://registry.npm.taobao.org输入cnpm -v,可以查看当前cnpm版本




三、安装vue-cli脚手架构建工具vue-cli 提供一个官方命令行工具,可用于快速搭建大型单页应用。该工具提供开箱即用的构建工具配置,带来现代化的前端开发流程。只需几分钟即可创建并启动一个带热重载、保存时静态检查以及可用于生产环境的构建配置的项目:安装:$ cnpm install vue-cli –g     //g表示全局安装安装完成之后输入 vue -V(注意这里是大写的“V”),如下图,如果出现相应的版本号,则说明安装成功。




四、创建一个基于webpack模板的新项目要创建项目,首先我们要选定目录,然后再命令行中把目录转到选定的目录。可以使用:$ vue init webpack my-app      // my-app为自定义项目名五、运行项目$ cnpm run dev运行成功后,浏览器直接显示的是页面如下:


2020,前端VUE面试都问了什么?_java_04



02
第二部分 项目结构配置


   


通过以上的努力,vue-cli脚手架搭建的项目结构如下:


2020,前端VUE面试都问了什么?_java_05


目录结构及其对应作用

  通过vue-cli搭建一个vue项目,会自动生成一系列文件,而这些文件具体是怎样的结构、文件对应起什么作用,可以看看下面的解释:




2020,前端VUE面试都问了什么?_java_06

2020,前端VUE面试都问了什么?_java_07



03
第三部分 首页模块开发

项目的入口文件是main.js


2020,前端VUE面试都问了什么?_java_08

在APP.vue中分为上下二部分

2020,前端VUE面试都问了什么?_java_09


底部导航


2020,前端VUE面试都问了什么?_java_10


部4个选项,动态路由展示不同的组件,组件结构如下2020,前端VUE面试都问了什么?_java_11路由的设置


2020,前端VUE面试都问了什么?_java_12


首页分‘类别’‘导航’‘列表’三个组件


2020,前端VUE面试都问了什么?_java_13


类别组件


2020,前端VUE面试都问了什么?_java_14

2020,前端VUE面试都问了什么?_java_15


轮播组件


2020,前端VUE面试都问了什么?_java_16

2020,前端VUE面试都问了什么?_java_17

2020,前端VUE面试都问了什么?_java_18

2020,前端VUE面试都问了什么?_java_19


列表组件


2020,前端VUE面试都问了什么?_java_20


  为了更好的让大家看到前后数据的交互,列表组件的数据是需要后端支持,在main.js中直接引入axios


2020,前端VUE面试都问了什么?_java_21

2020,前端VUE面试都问了什么?_java_22


04
第四部分  详情页跳转及展示




列表单击会直接跳转到详情页


2020,前端VUE面试都问了什么?_java_23


路由中的设置,传入不同的ID加载不同的详情页面


2020,前端VUE面试都问了什么?_java_24


详情页如何获取ID并发送请求呢?通过this.$route.params来获取路由值


2020,前端VUE面试都问了什么?_java_25


发送请求2020,前端VUE面试都问了什么?_java_26 获取到后端的值后面就是如何展示啦


2020,前端VUE面试都问了什么?_java_27