嵌套路由在 vue-router 2 中不起作用

Nested-routes is not working in vue-router 2

这是代码。

html

<div id="app">
    <nav>
        <ul>
            <router-link to="/user">User List</router-link>
        </ul>
    </nav>
    <router-view></router-view>
</div>

路由定义

const routes = [
{
    path: '/user', component: User,
    children: [
        {path: '', name:'user-list', component: UserList},
        {path: ':id', name: 'user-detail', component: UserDetail}
    ]
}];
let router = new VueRouter({routes});
export default router;

用户

<template>
<div>
    <h2>User Center</h2>
    <router-view></router-view>
</div>
</template>

<script>
export default {
    data () {
        return {

        }
    },
    methods:{
    }
}
</script>

用户列表

<template>
<div>
    <!--<ul>-->
        <!--<li v-for="u of userList">-->
            <!--<router-link :to="{ name:'user-detail', params: { id: '4343' }}">{{u.name}}</router-link>-->
        <!--</li>-->
    <!--</ul>-->
    <router-link :to="{ name:'user-detail', params: { id: '4343' }}">3434</router-link>
    <!--<a @click="query">++++</a>-->
</div>
</template>

<script>
import {mapActions} from 'vuex'
import {USER_QUERY} from '../store/user.type'


export default {
    data () {
        return {
            userList: []
        }
    },
    methods: {
        query: function () {
            this.$store.dispatch(USER_QUERY, [{name:'111'},{name:'1222'}])
        }
    }
}
</script>

用户详细信息

<template>
<div>
    <h2>{{ $route.params.id }}</h2>
</div>
</template>

<script>
export default {
    data () {
        return {
        }
    },
    methods: {
        test: ()=> {

        }
    }
}
</script>

我想点击UserList中的link可以导航到UserDetail,但是它不起作用,有人帮忙检查一下吗? 像这样

应用程序

--用户

----用户列表

http://localhost:8080/#/user

改为

应用程序

--用户

----用户详细信息

http://localhost:8080/#/user/5454

您必须在 outer-link 中将 to 中的路径作为 HTML 代码中的 /user/:id,如下所示:

  <router-link :to="'/users/' + id">3434</router-link>

查看工作 fiddle here

我犯了这样一个愚蠢的错误。

import User from './component/user-list.vue';