码迷,mamicode.com
首页 > 其他好文 > 详细

vue-router的基本使用

时间:2020-12-31 11:49:47      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:保存   oct   加载   script   order   routes   注册   精确   发送   

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <!-- 第一步:引入文件 -->
    <script src="./vue.js"></script>
    <script src="./vue-router.js"></script>
    <style>
      .router-link-active,
      .active {
        color: red;
        font-size: 20px;
        background-color: lightcyan;
        padding: 5px 10px;
        border-radius: 10px;
      }
      .exact-active {
        text-decoration: none;
      }
    </style>
  </head>
  <body>
    <div id="app">
      <h1>这是根组件</h1>
      <!-- <a href="#/login">登录</a>
      <a href="#/regist">注册</a> -->

      <!-- vue-router 专门提供了用于访问路由的链接标签,取代a标签。这个router-link最终还是会被渲染成a标签 -->
      <router-link to="/login">登录</router-link>
      <router-link to="/regist">注册</router-link>
      <hr />
      <!-- 第五步: 在父组件模板中给子组件的展示设置占位符 -->
      <!-- router-view :Vue提供的内置组件,主要负责展示匹配到的组件内容 -->
      <router-view></router-view>
    </div>
    <script>
      // 第二步,创建两个组件,通过 vue-router组件
      let login = {
        template: "<h1>登录组件</h1>",
        mounted() {
          console.log("登录组件渲染完成");
        },
        destroyed() {
          console.log("login组件被销毁");
        },
      };

      let regist = {
        template: "<h1>注册组件</h1>",
        mounted() {
          console.log("注册组件渲染完成");
        },
        destroyed() {
          console.log("regist组件被销毁");
        },
      };

      // 第三步: 创建 vue-router 实例对象,用这个对象给每一个组件设置一个路由,让这个路由和组件关联起来,当浏览器访问这个路由的时候,就可以加载该路由对应的组件
      const router = new VueRouter({
        // routes 这个属性是固定的m它是保存当前页面所有路由的属性,当浏览器访问的时候,就会来这里进行匹配。
        routes: [
          { path: "/login", component: login },
          { path: "/regist", component: regist },
          // 路由重定向 redorect, 网页默认向 / 发送请求, vue-router监听这个请求,自动重定向/login 路由,从而记载登录组件
          { path: "/", redirect: "/login" },
        ],
        linkActiveClass: "active", // 通过这个配置项,可以自定义路由连接被激活时的类名,这个可类名只要模糊匹配路由成功,就会被添加
        linkExactActiveClass: "exact-active", //这个是 router-link 中的 to 属性值必须和声明的path属性值一样,才能添加这类名,它是一个精确匹配
      });

      // 第四步,在Vue实例中注册路由对象
      let vm = new Vue({
        el: "#app",
        router: router,
      });
    </script>
  </body>
</html>
 
效果如下:
技术图片

 

 

vue-router的基本使用

标签:保存   oct   加载   script   order   routes   注册   精确   发送   

原文地址:https://www.cnblogs.com/yangcaicai/p/14191655.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!