zoukankan      html  css  js  c++  java
  • VUE实例课程---30、watch监听路由地址的改变

    VUE实例课程---30、watch监听路由地址的改变

    一、总结

    一句话总结:

    直接使用watch属性监听$route.path的改变即可,例如$route.path是'/login'表示登录页面
      watch: {
          //  this.$route.path
          '$route.path': function (newVal, oldVal) {
              // console.log(newVal + ' --- ' + oldVal)
              if (newVal === '/login') {
                  console.log('欢迎进入登录页面');
              } else if (newVal === '/register') {
                  console.log('欢迎进入注册页面');
              }
          }
      }

    二、watch监听路由地址的改变

    博客对应课程的视频位置:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>watch监听路由地址的改变</title>
     6 </head>
     7 <body>
     8 <!--
     9 
    10 直接使用watch属性监听$route.path的改变即可,如果$route.path是'/login'表示登录页面
    11 
    12 -->
    13 <div id="app">
    14     <router-link to="/login">登录</router-link>
    15     <router-link to="/register">注册</router-link>
    16 
    17     <!-- 容器 -->
    18     <router-view></router-view>
    19 
    20 </div>
    21 <script src="../js/vue.js"></script>
    22 <script src="https://cdn.bootcss.com/vue-router/3.1.3/vue-router.js"></script>
    23 <script>
    24     // 2. 创建子组件
    25     let login = {
    26         template: '<h3>这是登录 登录 子组件。</h3>'
    27     };
    28 
    29     let register = {
    30         template: '<h3>这是注册 注册 子组件。</h3>'
    31     };
    32 
    33     // 3. 创建一个路由对象
    34     let router = new VueRouter({
    35         routes: [ // 路由规则数组
    36             { path: '/', redirect: '/login' },
    37             { path: '/login', component: login },
    38             { path: '/register', component: register }
    39         ],
    40         linkActiveClass: 'myactive' // 和激活相关的类
    41     });
    42 
    43     // 创建 Vue 实例,得到 ViewModel
    44     let vm = new Vue({
    45         el: '#app',
    46         data: {},
    47         methods: {},
    48         // router: router
    49         router,
    50         watch: {
    51             //  this.$route.path
    52             '$route.path': function (newVal, oldVal) {
    53                 // console.log(newVal + ' --- ' + oldVal)
    54                 if (newVal === '/login') {
    55                     console.log('欢迎进入登录页面');
    56                 } else if (newVal === '/register') {
    57                     console.log('欢迎进入注册页面');
    58                 }
    59             }
    60         }
    61     });
    62     console.log(vm);
    63 </script>
    64 
    65 </body>
    66 </html>

     
  • 相关阅读:
    java数组
    python中的换行与不换行
    金融业务知识2---资金的时间价值与跨时期优化
    金融业务知识1---金融和金融系统
    你真的理解正向代理和反向代理吗?
    webpack(9)plugin插件功能的使用
    webpack(8)vue组件化开发的演变过程
    webpack(7)webpack使用vue配置
    webpack(6)webpack处理图片
    webpack(5)webpack处理css文件
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12765049.html
Copyright © 2011-2022 走看看