vue路由

作者: 另一个童话 | 来源:发表于2018-09-24 14:10 被阅读0次

HTML部分

    <scriptsrc="js/vue.js"></script>

    <scriptsrc="js/vue-router.js"></script>

    <divid="app">

    <h1>Hello App!</h1>

<!-- 通过传入 `to` 属性指定链接. -->

<!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->

    <router-linkto="/foo">Go to Foo</router-link>

    <router-linkto="/bar">Go to Bar</router-link>

    </p>

<!-- 路由出口 -->

<!-- 路由匹配到的组件将渲染在这里 -->

    <router-view></router-view>

    </div>

JavaScript部分

// 0. 如果使用模块化机制编程,导入Vue和VueRouter,要调用 Vue.use(VueRouter)

// 1. 定义 (路由) 组件。

// 可以从其他文件 import 进来

    constFoo={template:'<div>foo</div>'}

    constBar={template:'<div>bar</div>'}

// 2. 定义路由

// 每个路由应该映射一个组件。 其中"component" 可以是

// 通过 Vue.extend() 创建的组件构造器,

// 或者,只是一个组件配置对象。

// 我们晚点再讨论嵌套路由。

    constroutes=[

    {path:'/foo',component:Foo},

    {path:'/bar',component:Bar}

   ]

// 3. 创建 router 实例,然后传 `routes` 配置

// 你还可以传别的配置参数, 不过先这么简单着吧。

    constrouter=newVueRouter({

    routes// (缩写) 相当于 routes: routes

   })

// 4. 创建和挂载根实例。

// 记得要通过 router 配置参数注入路由,

// 从而让整个应用都有路由功能

    constapp=newVue({

    router

    }).$mount('#app')

/ 现在,应用已经启动了!

路由的嵌套
<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Document</title>

</head>

<body>

  <div id='app'>

      <router-link to='/home'>首页</router-link>

      <router-link to='/user'>用户页</router-link>

      <router-view></router-view>

  </div>

  <script src='js/vue.js'></script>

  <script src='js/vue-router.js'></script>

  <script>

      //2.

      var Home={

          template:`<h1>这是首页</h1>`

      }

      var  User={

          template:`

            <div>

                <h1>这是用户页</h1>

                <ul>

                    <li>

                        <router-link to='/user/regist'>注册</router-link>

                    </li>

                      <li>

                        <router-link to='/user/login'>登录</router-link>

                    </li>

                </ul>

                <router-view></router-view>

            </div>

          `

      }

      var Regist={

          template:`<h3>这是注册页面</h3>`

      }

        var Login={

          template:`<h3>这是登录页面</h3>`

      }

      //3.

      const routes=[

          {path:'/',component:Home},

          {path:'/home',component:Home},

          {

              path:'/user',

              component:User,

              children:[

                  {path:'regist',component:Regist},

                  {path:'login',component:Login}

              ]

          }

      ]

      //4.

      const router=new VueRouter({

          routes:routes

      })

      //5.

      new Vue({

          el:'#app',

          router:router

      })

    </script>

</body>

</html>

传参

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Document</title>

</head>

<body>

  <div id='app'>

      <router-link to='/home'>首页</router-link>

      <router-link to='/user'>用户页</router-link>

      <router-view></router-view>

  </div>

  <script src='js/vue.js'></script>

  <script src='js/vue-router.js'></script>

  <script>

      //2.

      var Home={

          template:`<h1>这是首页</h1>`

      }

      var  User={

          template:`

            <div>

                <h1>这是用户页</h1>

                <ul>

                    <li>

                        <router-link to='/user/regist?uname=jack&&age=18'>注册</router-link>

                    </li>

                      <li>

                        <router-link to='/user/login/alice/20'>登录</router-link>

                    </li>

                </ul>

                <router-view></router-view>

            </div>

          `

      }

      var Regist={

          template:`

            <div>

                <h3>这是注册页面</h3>

                <a href=''>{{$route.query}}</a>

                <ul>

                    <li>{{$route.query.uname}}</li>

                    <li>{{$route.query.age}}</li>

                </ul>

            </div>

            `

      }

        var Login={

          template:`

              <div>

                <h3>这是登录页面</h3>

                <p>{{$route.params}}</p>

                <ul>

                    <li>{{$route.params.userName}}</li>

                    <li>{{$route.params.userage}}</li>

                </ul>

              </div>

            `

      }

      //3.

      const routes=[

          {path:'/',component:Home},

          {path:'/home',component:Home},

          {

              path:'/user',

              component:User,

              children:[

                  {path:'regist',component:Regist},

                  {path:'login/:userName/:userage',component:Login} 

              ]

          }

      ]

      //4.

      const router=new VueRouter({

          routes:routes

      })

      //5.

      new Vue({

          el:'#app',

          router:router

      })

    </script>

</body>

</html>

相关文章

  • Vue应用

    Vue项目 Vue结构 Vue项目打包与发布 Vue语法二 Vue网络请求 Vue路由 动态路由 编程式路由导航

  • vue路由、自定义指令、脚手架

    *Vue vue-router 一、路由 一、导航式路由 路由路径由

  • Vue路由

    一、Vue路由基础用法: 二、Vue路由配置的抽出 三、路由动态传值: 四、路由的跳转方式: 五、路由的hash模...

  • 手写 Vue Router、手写响应式实现、虚拟 DOM 和 D

    Vue-Router 原理实现 一、Vue-Router 动态路由 二、Vue-Router 嵌套路由 三、Vue...

  • 2018-09-19 vue 八

    一 :路由路由:vue-router是Vue的工具库 vue-router.js下载:npm install ...

  • 6 VUE路由

    vue-> SPA应用,单页面应用(引入vue-router.js) 路由嵌套(多层路由): 路由其他信息:

  • vue路由的介绍(二)--vue动态路由和get的传值

    vue动态路由和get的传值---->同属于路由的传参 1,vue动态路由: 动态路由的配置: ①,在配置路由时加...

  • 2018-09-23 路由

    1.路由 路由:vue-router是Vue的工具库 vue-router.js下载:npm install ...

  • 2018-09-19 Vue 第八天

    1.路由 路由:vue-router是Vue的工具库 vue-router.js下载:npm install ...

  • vue路由

    vue路由--- SPA应用,单页面应用vue-resouce 交互vue-router 路由根据不同url地址...

网友评论

      本文标题:vue路由

      本文链接:https://www.haomeiwen.com/subject/qcncoftx.html