Jab*_*baa 6 laravel-5 vue-router vuejs2
我正在尝试使用官方路由库实现简单路由.
这是我的app.js
window.Vue = require('vue');
window.VueRouter= require('vue-router');
Vue.use(VueRouter);
const vt=Vue.component('example', require('./components/Example.vue'));
const router = new VueRouter({
routes:[
{
path:'/test',
component:vt
}
]
})
const app = new Vue({
el: '#app',
router:router
});
Run Code Online (Sandbox Code Playgroud)
但是我得到了一个错误
app.js:11256 Uncaught TypeError:VueRouter不是构造函数
这个答案适用于任何希望更深入了解问题的旁观者.
这里有两种解决方案.
在Laravel的默认配置[至少]中,vue-router预计将作为es模块导入.所以,它应该在文件的顶部完成.
import VueRouter from 'vue-router'
由于vue-router路由器是 es模块,因此您必须显式访问default模块的CommonJS版本的属性.
const VueRouter = require('vue-router').default;
您必须使用Vue注册Vue Router.
Vue.use(VueRouter)
根据评论最终我解决了此导入
import VueRouter from 'vue-router';
Vue.use(VueRouter);
Run Code Online (Sandbox Code Playgroud)