未捕获的错误:导出导入时,路由配置中需要 [vue-router] “路径”

Posted

技术标签:

【中文标题】未捕获的错误:导出导入时,路由配置中需要 [vue-router] “路径”【英文标题】:Uncaught Error: [vue-router] "path" is required in a route configuration when exporting imports 【发布时间】:2019-11-15 10:23:49 【问题描述】:

请注意:

索引/搜索/功能是完全相同的代码,但名称不同,所有三个都具有路径、组件、名称和元数据,如下所示。

notes/routes/routes.js

import Index from './index'
import Search from './search'
import Features from './features'

export default 
    Index,
    Search,
    Features

notes/routes/index.js

import Index from '../components/index'

export default 
    name: 'notes.index',
    path: '/notes',
    component: Index,
    meta: 
        title: `Manage notes - Sort`,
    

router.js

import Vue from 'vue'
import Router from 'vue-router'
import NoteRoutes from '@notes/routes/routes'

Vue.use(Router)

const routes = Array.prototype.concat(
    NoteRoutes,
);

const router = new Router(
    mode: 'history',
    routes
);

我正在连接每个模块中的所有 route.js 文件,然后将它们应用到路由器,但我仍然收到错误:

未捕获的错误:[vue-router] 路由配置中需要“路径”。

即使我所有的路线都有路径。如果我导入一个路由文件,让我们直接说index.js 它可以工作,但在使用我的 routes.js 时不行,它只是我为该模块的所有路由的导出器。我在这里错过了什么?

【问题讨论】:

【参考方案1】:

你应该这样做

notes/routes/routes.js

import Index from './index'
import Search from './search'
import Features from './features'

export default [
    Index,
    Search,
    Features
]

routes.js

import Vue from 'vue'
import Router from 'vue-router'
import routes from '@notes/routes/routes'

Vue.use(Router)



const router = new Router(
    mode: 'history',
    routes
);

你做的方式。你实际上得到了一个包含所有路由对象的数组

【讨论】:

啊,是的。谢谢你。我导出为对象,而不是数组。

以上是关于未捕获的错误:导出导入时,路由配置中需要 [vue-router] “路径”的主要内容,如果未能解决你的问题,请参考以下文章

Vue 路由:未捕获类型错误:window.Vue.use 不是函数

未捕获的类型错误:无法使用“in”运算符在未定义的 vue 路由器中搜索“路径”

laravel + mix + vue 路由器错误:找不到导出'createStaticVNode'(导入为'_createStaticVNode')

vue-resource:在拦截 ajax 错误时捕获“未捕获(在承诺中)”

Vue-cli-4-路由配置文件,路由进阶,二级路由

华为RT6路由器配置信息怎么导入导出