目录

  • 路由组件与非路由组件的区别
  • v-if、v-show区别
  • Vue2.0与Vue3.0区别
  • 声明式导航与编程式导航
  • 路由传参
  • postman测试接口
  • axios二次封装
  • vuex状态管理库
  • 事件委派/事件委托
  • 函数的防抖与节流
  • 组件通信的方式
  • 组件
  • nprogress进度条插件
  • 轮播图-swiper插件 (移动端/PC端)
  • 轮播图-carousel
  • 分页器
  • 生命周期函数(8个)
  • 动态开发面包屑中的分类名、关键字


整理一下之前看Vue视频时做的笔记,顺便记录一下面试中的高频问题

比较全的Vue笔记👉狂神说Vue笔记整理 找常用的图标👉iconfont-阿里巴巴矢量图标库

路由组件与非路由组件的区别

①放不同文件夹
②路由组件一般需要在router文件夹中进行注册(使用的即为组件的名字),非路由组件在使用的时候,一般都是以标签的形式使用
③注册后,都有 $route$router属性

v-if、v-show区别

Vue2.0与Vue3.0区别

声明式导航与编程式导航

声明式导航:router-link,必须有to属性
编程式导航:$router.push/replace方法,可写业务
编程式导航比声明式导航更加灵活(内部可加入自己的逻辑),某些情况下效率更高
什么情况下编程式导航比声明式导航效率更高?

路由传参

params参数
query参数
路由传递参数:
①字符串形式
②模板字符串
③对象(需要有name)

  1. 路由跳转传参的时候,对象的写法可以是namepath的形式,但 path这种写法不能和params参数一起使用
  2. 指定params参数可传可不传:配置路由时,在占位的后面加上一个问号。path:"/search/:keyword?"
  3. params参数传递空串,路径会出问题,使用undefined解决。params:{keyword:''||undefined}
  4. 路由组件可以传递props数据
    ①布尔值写法
    ②对象写法
    ③函数写法

突然不理解了,1说path不能和params参数一起使用,那第2条,不是错了吗?

postman测试接口

axios二次封装

参考git/npm关于axios的文档

vuex状态管理库

事件委派/事件委托

函数的防抖与节流

防抖:前面所有的触发都被取消,最后一次执行在规定的时间之后才会触发,也就是说如果连续快读地触发,只会执行一次
节流:在规定的间隔时间范围内不会重复触发回调,只有大于这个时间间隔才会触发回调,把频繁触发变为少量触发
lodash插件:里面封装函数的防抖与节流的业务
使用lodash实现防抖和节流功能

组件通信的方式

props:用于父子组件通信
自定义事件:@on,@emit 可以实现子给父通信
全局事件总线:$bus (全能)
pubsub-js:全能,在Vue中很少用
插槽
vuex

组件

nprogress进度条插件

start()done()

轮播图-swiper插件 (移动端/PC端)

使用步骤:
①引入相应依赖包(swiper.js/swiper.css)
②页面中的结构务必要有
③初始化swiper实例,给轮播图添加动态效果

轮播图-carousel

开发项目时,如果看到一个组件在很多地方都使用,就把它变成全局组件。
(注册一次,可以在任意地方使用)

分页器

ElementUI有相应的分页组件,使用简单

生命周期函数(8个)

动态开发面包屑中的分类名、关键字