【发布时间】:2017-10-22 18:13:02
【问题描述】:
我有一个路由器
routes: [
{
path: '/',
name: 'home',
meta : {
label : 'Home'
},
component: Home
},
{
path: '/usuarios',
name: 'usuarios',
meta : {
label : 'Usuarios'
},
component: Users,
children : [
{
path: '/listar',
meta : {
label : 'Listar'
},
name : 'listUser',
component: Wrapper,
},
{
path: '/cadastrar',
meta : {
label : 'Cadastrar !'
},
name : 'userCreate',
component: UserCreate
},
],
},
]
我有一个模板可以在我的导航栏上渲染这个路由器
<div class="main">
<ul class="menu-list">
<li v-for="item in menus" v-on:click="toggleActive(item)">
<router-link class="font-gray" :to="item.path" :exact="true">{{item.meta.label}}</router-link>
<ul class="menu-list" v-if="item.children && item.isActive">
<li v-for="child in item.children">
<router-link class="font-gray" :to="{path : item.path+child.path}" :exact="true" :append="true" >{{child.meta.label}}</router-link>
</li>
</ul>
</li>
</ul>
</div>
当我单击第一个路由器链接时,在路由器视图上渲染视图没有问题。但是当我点击childrens的路由器链接时,就不行了,
有人知道为什么吗?
【问题讨论】:
-
是因为你使用的是
append吗?你是什么意思“它不起作用”? -
对不起,我只是在用这个追加做一些测试。无论有没有它,它仍然无法正常工作。我的意思是它不会在
标签上呈现组件 -
您点击了链接却没有任何反应?控制台没有错误?
-
没有错误,唯一的问题是当我查看vue开发工具时,没有router-view组件。没有错误,没有警告
-
试试
:to="{ name: child.name }"
标签: vuejs2 vue-router