«

Vue-Router命名路由存在默认子路由的问题

时间:2023-5-26 19:26     作者:六思逸     分类: Vue


报错信息:

Named Route 'index' has a default child route. When navigating to this named route (:to="{name: 'index'}"), the default child route will not be rendered. Remove the name from this route and use the name of the default child route for named links instead.

Vue-Router命名路由存在默认子路由的问题

在Vue的项目中使用了Vue-Router,当某个路由有子级路由时,如下写法

const routes = [
    {
        path: "/index",
        name: "index",
        component: () => import("@/views/Layout.vue"),
        children: [
            {
                path: "",
                name: "indexcontent",
                component: () => import("@/views/IndexContent.vue"),
            },
        ],
    },
];

按照以上写法,就会报出如下警告:

Vue-Router命名路由存在默认子路由的问题

解决办法:

只需将父级的name属性去除即可解决这个问题,因为当某个路由有子级路由的时候,这时候父级路由就需要一个默认的路由,所以父级路由不能定义name属性

const routes = [
    {
        path: "/index",
        component: () => import("@/views/Layout.vue"),
        children: [
            {
                path: "",
                name: "indexcontent",
                component: () => import("@/views/IndexContent.vue"),
            },
        ],
    },
];

标签: Vue Vue-Router 命名路由 默认子路由 路由导航 渲染问题 配置 解决方法

版权所有:六思逸
文章标题:Vue-Router命名路由存在默认子路由的问题
除非注明,文章均为 六思逸 原创,转载请注明作者和出处 六思逸

扫描二维码,在手机上阅读

推荐阅读: