尚硅谷的尚品汇课程的学习笔记

294 阅读4分钟

1、脚手架创建项目命令:vue create 项目名称,创建 vue2 版本。

2、项目停止快捷键:ctrl+c,然后根据提示选择 y。

3、配置:项目运行后,浏览器自动打开网页:package.json => "scripts" => "serve": "vue-cli-service serve" 后面新增 open 命令, 代码如下:"serve": "vue-cli-service serve --open"

4、eslint 校验功能关闭:在项目根目录的 vue.config.js 文件里,对外暴露 lintOnSave:false, 代码如下:module.exports = { //关闭 eslint lintOnSave:false }

5、src 文件夹简写方法,在项目根目录下的 jsconfig.json 文件里配置。 @代表的是 src 文件夹,这样将来文件过多,找的时候很方便。 <路径提示插件:Path Intellisense> *在样式当中也可以使用@符号【src别名】,切记在前面加上~

6、项目路由的分析 vue-router 路由组件: home 首页路由组件,逛逛路由组件,消息路由组件,购物车路由组件,个人中心路由组件,login 登录路由,register 注册路由 非路由组件: tabbar 底部菜单(在 home 首页,逛逛,消息,购物车,个人中心有,其他没有)

7、完成非路由组件 tabbar 的业务 安装 vant:npm i vant@latest-v2 -S

8、样式处理: 使用预处理器 less 安装:npm install --save less less-loader 代码如: 引入默认样式,在根目录下的 public 里面添加 reset.css,index.html 处引入 代码如: 使用 css 变量,便于写主题色 定义 => :root{--orangeDeep: #ec612a;} 使用 => var(--orangeDeep: #ec612a;) *注意含有顶部固定和滚动模块页面的布局 *手机端H5调试工具:eruda.js *卸载不必要依赖包命令:npm uninstall 依赖包名 --save-dev

9、搭建路由组件:home 首页,PostBar 逛逛,message 消息,cart 购物车,mine 个人中心 安装 vue-router3 版本:npm install vue-router@3 -components 文件夹:经常放置的非路由组件(共用全局组件) -pages|views 文件夹:经常放置路由组件

10、配置路由并设置重定向,src 文件夹下 => 新增 router,main.js 里引入并注册路由

11、设置 tabbar 的显示和隐藏:根据路由元信息配置判断

12、引入子组件 代码如下: import Search from '@/components/Search' export default { name: "ProjectMallIndex", components:{ Search }...

13、Carousel组件=>vant轮播实现自定义指示器:translate3d实现

14、van-image引用本地图片问题,解决方式:require(地址字符串)。

15、新建utils文件夹统一管理工具函数,this.$myutils... 注册使用全局过滤器。

16、瀑布流布局:简单思路:把数据分为两个数组的商品,商品卡片高低不同。2列flex横向排布,每列商品flex布局纵向排列。

17、van-list实现下拉加载

18、路由传参 router/index.vue => 给路由取名name:'goodsList',代码如下 { path:'/goodsList', component:GoodsList, meta:{ tabbarShow:false }, name:'goodsList' }

跳转时传参方式如下: this.$router.push({name:"goodsList",params:{},query:item})

*可用$route.path判断路径在哪个页面

*通过beforeEach设置动态title

19、在router/index.js 重写 push | replace方法

20、自定义全局组件可放在components文件夹下,在main.js注册使用

21、使用postman工具测试接口

22、axios二次封装,在api/request.js,安装命令npm install --save axios

23、接口统一管理,在api/index.js

24、配置代理,解决跨域:vue.cofig.js配置,代码如下: // 代理跨域 devServer: { proxy: { '/api': { target: '请求地址', } }, }

25、使用nprogress:npm install --save nprogress,start:进度条开始 done进度条结束

26、vuex状态管理库(vue2对应vuex3版本):npm install --save vuex@3 // state:仓库存储数据的地方 // mutations:修改state的唯一手段 // action:处理action,可以书写自己的业务逻辑,也可以处理异步 // getters:理解为计算属性,用于简化仓库数据,让组件获取仓库的数据更加方便 vuex实现模块式开发。

27、lodash插件实现函数的防抖与节流: 节流(throttle):在规定的时间间隔范围内不会重复触发回调。只有大于这个时间间隔才会触发回调,把频繁触发变为少量触发 防抖(debounce):前面的所有触发都被取消,最后一次执行在规定的时间之后才会触发,也就是说如果连续快速的触发,只会执行一次

28、过渡动画transition

29、mock数据: 安装:npm install mockjs 使用步骤: 1)在项目当中src文件夹中创建mock文件夹 2)准备json数据(格式化一下,不要留空格) 3)把mock数据需要的图片放到public文件夹中【public文件夹在打包的时候,会把相应的资源原封不动打包到dist文件夹中】 4)创建mockSever.js,通过mockjs插件实现模拟数据 5)mockSever.js文件在入口文件中引入(至少需要执行一次,才能模拟数据)