vue 动态路由

基本例子

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>

<div id="app">
  <p>
    <router-link to="/user/foo">f</router-link>
    <router-link to="/user/bar">b</router-link>
  </p>
  <router-view></router-view>
</div>


<script>
const User = {
  template: `<div> {{ $route.params.xx }}</div>`
}

const router = new VueRouter({
  routes: [
    { path: '/user/:xx', component: User }
  ]
})

const app = new Vue({ router }).$mount('#app')
</script>

这种也可以

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>

<div id="app">
  <p>
    <router-link to="/foo">f</router-link>
    <router-link to="/bar">b</router-link>
  </p>
  <router-view></router-view>
</div>


<script>
const User = {
  template: `<div> {{ $route.params.xx }}</div>`
}

const router = new VueRouter({
  routes: [
    { path: '/:xx', component: User }
  ]
})

const app = new Vue({ router }).$mount('#app')
</script>

等价于

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>

<div id="app">
  <p>
    <router-link to="/foo">f</router-link>
    <router-link to="/bar">b</router-link>
  </p>
  <router-view></router-view>
</div>


<script>
const User = {
  template: `<div> {{ $route.params.xx }}</div>`
}

 const routes=[
    { path: '/:xx', component: User }
  ]

const router = new VueRouter({
  routes
})

const app = new Vue({ router }).$mount('#app')
</script>

再由

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>

<div id="app">
  <p>
    <router-link to="/foo">f</router-link>
    <router-link to="/bar">b</router-link>
  </p>
  <router-view></router-view>
</div>


<script>
const User = {
  template: `<div> doubi</div>`
}

 const routes=[
    { path: '/:xx', component: User }
  ]

const router = new VueRouter({
  routes
})

const app = new Vue({ router }).$mount('#app')
</script>

总结

路由的关键是理解如何绑定地址和组件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容