Vue-router错误:TypeError:无法读取未定义的属性"匹配"

Moh*_*eza 18 javascript vue.js vue-router vuejs2

我正在尝试编写我的第一个Vuejs应用程序.我使用vue-cli简单的WebPack样板.

当我vue-router向我的应用程序组件添加链接时,我在控制台中收到此错误

渲染函数出错:"TypeError:无法读取未定义的属性'匹配'"

这是我的代码:

App.vue

<template>
  <div>
    <h2>Links</h2>
    <ul>
      <router-link to='/'>Home</router-link>
      <router-link to='/query'>Query</router-link>

      <router-view></router-view>
    </ul>
  </div>
</template>

<script>
    export default {}
</script>
Run Code Online (Sandbox Code Playgroud)

main.js

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)
import routes from './routes.js'
import App from './App.vue'

const app = new Vue({
  el: '#app',
  routes,
  render: h => h(App)
})
Run Code Online (Sandbox Code Playgroud)

routes.js

import VueRouter from 'vue-router';
let routes=[
  {
    path: '/',
    component: require('./Components/Home.vue')
  },
  {
    path: '/query',
    component: require('./Components/Query.vue')
  }
];

export default new VueRouter({routes});
Run Code Online (Sandbox Code Playgroud)

Ber*_*ert 61

将其添加到Vue时的名称必须router.

import router from './routes.js'

const app = new Vue({
  el: '#app',
  router,
  render: h => h(App)
})
Run Code Online (Sandbox Code Playgroud)

无论出于何种原因,如果你想调用变量,routes你可以用这种方式分配它.

import routes from './routes.js'

const app = new Vue({
  el: '#app',
  router: routes,
  render: h => h(App)
})
Run Code Online (Sandbox Code Playgroud)

  • 如果可以的话,我会给你10星。我在上一个教程,它没有说我们必须使用router作为变量名。我正在使用路由器。 (7认同)