Vue.js-未知的自定义元素:<router-view>

时间:2019-03-20 17:00:11

标签: typescript vue.js vue-component vuex vue-router

我对Vue.js有点陌生,我正在尝试实现到应用程序的路由,但是由于某种原因,我遇到了一个问题:

  

未知的自定义元素:<router-view>-您是否注册了组件   正确吗?对于递归组件,请确保提供“名称”选项

我是否错误注册了组件?非常感谢您的帮助,我的代码如下:

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>

我正在遵循这个人的代码Here和他的course

1 个答案:

答案 0 :(得分:0)

好像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}
  ]
})