• Vue-Router来实现组件间跳转的三种方法


    一、通过js的编程的方式

    <!doctype html>
    <html>
     <head>
     <meta charset="UTF-8">
     <title></title>
      <script src="js/vue.js"></script>
    <!-- 引入文件 -->
      <script src="js/vue-router.js"></script>
     </head>
     <body>
     <div id="container">
        <p>{{msg}}</p>
    <!--通过router-view指定盛放组件的容器 -->
        <router-view></router-view>
     
      </div>
      <script>
        var testLogin = Vue.component("login",{
          template:`
            <div>
              <h1>这是我的登录页面</h1>
              <router-link to="/myRegister">注册</router-link>
            </div>
          `
          /*to后面是路由地址*/
        })
        var testRegister = Vue.component("register",{
          methods:{
            jumpToLogin:function(){
              this.$router.push('/myLogin');
            }
          },
          template:`
            <div>
              <h1>这是我的注册页面</h1>
              <button @click="jumpToLogin">注册完成,去登录</button>
            </div>
          `
        })
        //配置路由词典
        const  myRoutes =[
          {path:'',component:testLogin},
          {path:'/myLogin',component:testLogin},
          {path:'/myRegister',component:testRegister}
        ]
     
        const myRouter = new VueRouter({
          routes:myRoutes
        })
        new Vue({
          router:myRouter,
          el:"#container",
          data:{
            msg:"Hello VueJs"
          }
        })
      </script>
     </body>
    </html>

    二、直接修改地址栏中的路由地址

    <!doctype html>
    <html>
     <head>
     <meta charset="UTF-8">
     <title></title>
      <script src="js/vue.js"></script>
    <!-- 引入文件 -->
      <script src="js/vue-router.js"></script>
     </head>
     <body>
     <div id="container">
        <p>{{msg}}</p>
    <!--通过router-view指定盛放组件的容器 -->
        <router-view></router-view>
      </div>
      <script>
        var testLogin = Vue.component("login",{
          template:`
            <div>
              <h1>这是我的登录页面</h1>
            </div>
          `
        })
        var testRegister = Vue.component("register",{
          template:`
            <div>
              <h1>这是我的注册页面</h1>
            </div>
          `
        })
        //配置路由词典
        //对象数组
        const  myRoutes =[
        //当路由地址:地址栏中的那个路径是myLogin访问组件
        //组件是作为标签来用的所以不能直接在component后面使用
        //要用返回值
          //path:''指定地址栏为空:默认为Login页面
          {path:'',component:testLogin},
          {path:'/myLogin',component:testLogin},
          {path:'/myRegister',component:testRegister}
        ]
     
        const myRouter = new VueRouter({
          //myRoutes可以直接用上面的数组替换
          routes:myRoutes
        })
        new Vue({
          router:myRouter,
          //或者:
          /*
            router:new VueRouter({
                routes:[
                  {path:'/myLogin',component:testLogin},
          {path:'/myRegister',component:testRegister}
                ]
            })
          */
          el:"#container",
          data:{
            msg:"Hello VueJs"
          }
        })
      </script>
     </body>
    </html>

    三、通过router-link实现跳转

    <!doctype html>
    <html>
     <head>
     <meta charset="UTF-8">
     <title></title>
      <script src="js/vue.js"></script>
    <!-- 引入文件 -->
      <script src="js/vue-router.js"></script>
     </head>
     <body>
     <div id="container">
        <p>{{msg}}</p>
    <!--通过router-view指定盛放组件的容器 -->
        <router-view></router-view>
     
      </div>
      <script>
        var testLogin = Vue.component("login",{
          template:`
            <div>
              <h1>这是我的登录页面</h1>
              <router-link to="/myRegister">注册</router-link>
            </div>
          `
          /*to后面是路由地址*/
        })
        var testRegister = Vue.component("register",{
          template:`
            <div>
              <h1>这是我的注册页面</h1>
            </div>
          `
        })
        //配置路由词典
        const  myRoutes =[
          {path:'',component:testLogin},
          {path:'/myLogin',component:testLogin},
          {path:'/myRegister',component:testRegister}
        ]
     
        const myRouter = new VueRouter({
          routes:myRoutes
        })
        new Vue({
          router:myRouter,
          el:"#container",
          data:{
            msg:"Hello VueJs"
          }
        })
      </script>
     </body>
    </html>
  • 相关阅读:
    UNIGUI与UNIURLFRAME的互动
    unigui结合JS方法记录
    如何将uniurlframe中html调用delphi的函数
    XE下显示托盘图标(TrayIcon)
    Delphi fmx控件在手机滑动与单击的问题
    Delphi使用iTools安卓模拟器
    Delphi调用SQL分页存储过程实例
    分享Pos函数(比FastPos还要快)
    Delphi Excel导入 的通用程序转载
    Delphi控件cxGrid 如何动态创建列?
  • 原文地址:https://www.cnblogs.com/zhaosijia----1234/p/9513345.html
Copyright © 2020-2023  润新知