第七章 路由 73 路由-设置选中路由高亮的两种方式
linkActiveClass
-
类型:
string
-
默认值:
"router-link-active"
全局配置
<router-link>
默认的激活的 class。
https://router.vuejs.org/zh/api/#linkactiveclass
通过 默认vue-router提供的类名 router-link-active 设置选中路由高亮的两种方式
1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="utf-8"> 6 <meta name="viewport" content="width=device-width,initial-scale=1.0"> 7 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 8 <title>Document</title> 9 <!--1.导入Vue的包--> 10 <script src=" https://cdn.jsdelivr.net/npm/vue"></script> 11 <!-- 安装 vue-router 路由模块 --> 12 <script src="../lib/vue-router-3.0.6.js"></script> 13 <style> 14 .router-link-active,.myactive{ 15 color: red; 16 font-weight: 800; 17 font-style: italic; 18 font-size: 80px; 19 text-decoration: underline; 20 background-color: green; 21 } 22 </style> 23 </head> 24 25 <body> 26 <div id="app"> 27 <!-- <a href="#/login">登录</a> 28 <a href="#/register">注册</a> --> 29 30 <!-- router-link 默认渲染为一个a标签 --> 31 <router-link to="/login" tag="span">登录</router-link> 32 <router-link to="/register">注册</router-link> 33 34 <!-- 这是 vue-router 提供的元素,专门用来 当作占位符的,将来,路由规则,匹配到的组件,就会展示到这个 router-view中去 --> 35 <!-- 所以:我们可以把router-view 认为是一个占位符 --> 36 <router-view></router-view> 37 </div> 38 39 <script> 40 //组件的模板对象 41 var login={ 42 template:'<h1>登录组件</h1>' 43 } 44 45 var register={ 46 template:'<h1>注册组件</h1>' 47 } 48 49 /*Vue.component('login',{ 50 template: '<h1>登录组件</h1>' 51 })*/ 52 53 //2.创建一个路由对象,当导入vue-router 包治好,在window全局对象中,就有了一个路由的构造函数,叫做VueRouter 54 //在 new 路由对象的时候,可以为 构造函数,传递一个配合对象 55 var routerObj=new VueRouter({ 56 //route //这个配置对象中的route表示 【路由匹配规则】 的意思 57 routes:[//路由匹配规则 58 //每个路由规则,则都是一个对象,这个规则对象,身上,有两个必须的属性: 59 // 属性1 是path, 表示监听 哪个路由链接地址; 60 // 属性2 是component,表示,如果 路由是前面匹配到的path,则展示component属性对应的哪个组件 61 //注意:component 的属性值,必须是一个组件的模板对象,不能是 组件的引用名称; 62 // {path:'/',component:login}, 63 {path:'/',redirect:'/login'}, //这里的 redirect 和 Node 中的redirect完全是两码事 64 {path:'/login',component:login}, 65 {path:'/register',component:register} 66 ], 67 linkActiveClass:'myactive' 68 }) 69 70 //创建 Vue 实例,得到 ViewModel 71 var vm = new Vue({ 72 el:'#app', 73 data:{ 74 msg:'' 75 }, 76 methods:{}, 77 router:routerObj //将路由规则对象,注册到 vm 实例上,用来监听 URL 地址的变化,然后展示对应的组件 78 }); 79 </script> 80 </body> 81 </html>