Vue.js - 未知自定义元素:<router-view>
Vue.js - Unknown custom element: <router-view>
我对 Vue.js 有点陌生,我正在尝试实现到应用程序的路由,但出于某种原因,我遇到了一个问题:
Unknown custom element: <router-view>
- did you register the component
correctly? For recursive components, make sure to provide the "name" option
我是不是注册错了?非常感谢任何帮助,我的代码如下:
app.js
import Vue from 'vue'
import AppLayout from './theme/Layout.vue'
import router from './router'
const app = new Vue({
router,
...AppLayout
})
export { app, router }
router.js
import Vue from 'Vue'
import VueRouter from 'vue-router'
import Category from './theme/Category.vue'
import Login from './theme/Login.vue'
Vue.use(VueRouter)
const router = new VueRouter({
routes: [
{path: '/', component: Category},
{path: '/login', component: Login}
]
})
导出默认路由器
Layout.vue
<template>
<div>
<app-header></app-header>
<section class='main-section section'>
<div class='container content'>
<router-view></router-view>
</div>
</section>
<app-footer></app-footer>
</div>
</template>
<script>
import AppHeader from './AppHeader.vue'
import AppFooter from './AppFooter.vue'
export default {
components: {
'app-header': AppHeader,
'app-footer': AppFooter
}
}
</script>
<style lang='scss'>
$primary: #287ab1;
@import '~bulma';
</style>
看起来 Vue.use(VueRouter)
没有做它的事...
这可能是由于您的 Vue 导入区分大小写所致。
import Vue from 'Vue' // <--- should be 'vue' NOT 'Vue'
import VueRouter from 'vue-router'
import Category from './theme/Category.vue'
import Login from './theme/Login.vue'
Vue.use(VueRouter)
const router = new VueRouter({
routes: [
{path: '/', component: Category},
{path: '/login', component: Login}
]
})
我对 Vue.js 有点陌生,我正在尝试实现到应用程序的路由,但出于某种原因,我遇到了一个问题:
Unknown custom element:
<router-view>
- did you register the component correctly? For recursive components, make sure to provide the "name" option
我是不是注册错了?非常感谢任何帮助,我的代码如下:
app.js
import Vue from 'vue'
import AppLayout from './theme/Layout.vue'
import router from './router'
const app = new Vue({
router,
...AppLayout
})
export { app, router }
router.js
import Vue from 'Vue'
import VueRouter from 'vue-router'
import Category from './theme/Category.vue'
import Login from './theme/Login.vue'
Vue.use(VueRouter)
const router = new VueRouter({
routes: [
{path: '/', component: Category},
{path: '/login', component: Login}
]
})
导出默认路由器
Layout.vue
<template>
<div>
<app-header></app-header>
<section class='main-section section'>
<div class='container content'>
<router-view></router-view>
</div>
</section>
<app-footer></app-footer>
</div>
</template>
<script>
import AppHeader from './AppHeader.vue'
import AppFooter from './AppFooter.vue'
export default {
components: {
'app-header': AppHeader,
'app-footer': AppFooter
}
}
</script>
<style lang='scss'>
$primary: #287ab1;
@import '~bulma';
</style>
看起来 Vue.use(VueRouter)
没有做它的事...
这可能是由于您的 Vue 导入区分大小写所致。
import Vue from 'Vue' // <--- should be 'vue' NOT 'Vue'
import VueRouter from 'vue-router'
import Category from './theme/Category.vue'
import Login from './theme/Login.vue'
Vue.use(VueRouter)
const router = new VueRouter({
routes: [
{path: '/', component: Category},
{path: '/login', component: Login}
]
})