Uncaught Error: [vue-router] "path" is required in a route configuration
Uncaught Error: [vue-router] "path" is required in a route configuration
我正在关注 the official example,但我不知道为什么我得到一个包含此 js 错误的空白页面
vue-router.esm.js?fe87:10 Uncaught Error: [vue-router] "path" is required in a route configuration.
这是我的两个页面:
/:language/bar /:language/foo
+------------------+ +-----------------+
| +---------+ | | +---------+ |
| | header | | | | header | |
| +---------+ | | +---------+ |
| +--------------+ | | +-------------+ |
| | bar | | +------------> | | foo | |
| | | | | | | |
| +--------------+ | | +-------------+ |
+------------------+ +-----------------+
这就是我正在努力做到的。
我的入口点js文件:
import Vue from 'vue';
import router from './router';
// import some components
let vm = new Vue({
el: '#app',
router,
components: {/*imported components*/},
});
vm.$language.current = vm.$route.params.language;
我的入口点html
<body>
<div id="app">
<!-- this is the header, the common part -->
<navbar fullname=''></navbar>
<router-view></router-view>
</div>
</body>
我的路由器
import Vue from 'vue';
import Router from 'vue-router';
// import foo and bar components
Vue.use(Router);
let routes = [
{
path: '/:language',
name: 'homepage',
children: [
{
path: 'foo',
component: Foo
},
{
path: 'bar',
component: Bar
},
]
}
];
export default new Router({routes,});
我的 foo 组件
<template>
<div>
<h1>FOO</h1>
</div>
</template>
<script>export default {};</script>
如何修复此错误?
您也应该为父组件添加一个组件。
注意:
1.组件尽量使用本地注册
2. 对于嵌套路由器:
const router = new VueRouter({
routes: [
{ path: '/language/:id',
component: language,
children: [
{
// Bar will be rendered inside language's <router-view>
// when /language/:id/bar is matched
path: 'bar',
component: Bar
},
{
// Foo will be rendered inside language's <router-view>
// when /language/:id/foo is matched
path: 'foo',
component: Foo
}
]
}
]
})
- 要导出组件:
export default {
name: "Foo"
};
我正在关注 the official example,但我不知道为什么我得到一个包含此 js 错误的空白页面
vue-router.esm.js?fe87:10 Uncaught Error: [vue-router] "path" is required in a route configuration.
这是我的两个页面:
/:language/bar /:language/foo
+------------------+ +-----------------+
| +---------+ | | +---------+ |
| | header | | | | header | |
| +---------+ | | +---------+ |
| +--------------+ | | +-------------+ |
| | bar | | +------------> | | foo | |
| | | | | | | |
| +--------------+ | | +-------------+ |
+------------------+ +-----------------+
这就是我正在努力做到的。
我的入口点js文件:
import Vue from 'vue';
import router from './router';
// import some components
let vm = new Vue({
el: '#app',
router,
components: {/*imported components*/},
});
vm.$language.current = vm.$route.params.language;
我的入口点html
<body>
<div id="app">
<!-- this is the header, the common part -->
<navbar fullname=''></navbar>
<router-view></router-view>
</div>
</body>
我的路由器
import Vue from 'vue';
import Router from 'vue-router';
// import foo and bar components
Vue.use(Router);
let routes = [
{
path: '/:language',
name: 'homepage',
children: [
{
path: 'foo',
component: Foo
},
{
path: 'bar',
component: Bar
},
]
}
];
export default new Router({routes,});
我的 foo 组件
<template>
<div>
<h1>FOO</h1>
</div>
</template>
<script>export default {};</script>
如何修复此错误?
您也应该为父组件添加一个组件。
注意: 1.组件尽量使用本地注册 2. 对于嵌套路由器:
const router = new VueRouter({
routes: [
{ path: '/language/:id',
component: language,
children: [
{
// Bar will be rendered inside language's <router-view>
// when /language/:id/bar is matched
path: 'bar',
component: Bar
},
{
// Foo will be rendered inside language's <router-view>
// when /language/:id/foo is matched
path: 'foo',
component: Foo
}
]
}
]
})
- 要导出组件:
export default {
name: "Foo"
};