一、路由传参
1. params 参数
(1)params 参数
路由配置
页面
(2)v-html指令
v-html指令,可以渲染富文本内容(包含html信息的内容)。
v-text指令,渲染文本内容。
当需要渲染的数据是html内容时,使用v-html指定。
2、query参数
路由地址,采用query传参方式:?参数1=XXX&参数2=XXX
3、$router和$route
$router返回的是当前项目中的路由器对象。
$route返回的是当前路由信息。
4、vue.config.js
vue.config.js 是一个可选的配置文件,如果项目的 (和 package.json 同级的) 根目录中存在这个文件,那么它会被 @vue/cli-service 自动加载。
二、添加路由
1、路由规则redirect属性重定向
redirect属性:进行重定向URL地址。
2、添加404路由
5、路由进阶
1、路由进阶分为两种模式 一种是hash模式,另一种是history模式
// hash模式,使用的是锚链接的原理实现路由的跳转,这种方式兼容性非常好;缺点是路径带有#号,不够美观。
// history模式,使用的是浏览器中内置的history对象实现路由的跳转,这种方式不兼容老版本的浏览器,刷新后会丢失路由信息。mode:'hash'
2. 路由元信息
切换路由时title也要跟着变化
3. nprogress加载进度条
nprogress是页面跳转时出现在浏览器顶部的进度条
安装
npminstallnprogress
导入
// 导入nprogressimportNProgressfrom"nprogress";// 导入nprogress的样式import"nprogress/nprogress.css";
在导航守卫中使用
childer是二级路由
需要先定义一级路由组件,确定好在哪个组件中配置二级路由,就去那个组件的配置规则中添加children关键字,按照一级路由的配置方法配置规则。
路由懒加载
使用路由懒加载,是为了给客户更好的体验,首页组件加载速度更快一些,提高首屏性能。
懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载。
8、scoped
scoped属性,用于设置局部样式,当前组件中的样式只对当前组件生效。
注意:App组件中的样式是全局样式,通常不加scoped。
9、sass
Sass 是一个 CSS 预处理器。使用sass可以定义嵌套定义样式,大大节省css代码;使用sass可以使用定义变量,可以统一定义风格。
安装
npm install sass sass-loader@8 -D
less
less 也是一个 CSS 预处理器。
注意:在less里面定义变量的符号是@。
安装
npm i less@3-D
npm i less-loader@7-D
路由缓存
1、keep-alive组件
keep-alive:用于缓存路由组件,默认情况下会缓存打开的所有组件。如果需要指定缓存哪些组件,通过include属性指定,该属性可以传一个数组,数组中定义组件的名称。
作用:通过路由缓存,组件之间的切换就能保存上个组件的状态,而不是切换之后又得重新操作。
2、路由组件特有的两个生命周期
当路由组件采用缓存后,created和mounted这两个生命周期函数,只会在第一次执行;并且destroyed这个生命周期函数不会执行。
这时候,通常都会配合activated(路由组件激活状态生命周期函数)和deactivated(路由组件失活状态生命周期函数)这两个生命周期钩子。
注意:只有当组件在 内被切换,才会有activated 和 deactivated 这两个钩子函数。