第七章 路由 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>
原文地址:https://www.cnblogs.com/songsongblue/p/11004682.html