Vue路线:未捕获的TypeError:window.Vue.use不是函数

时间:2018-12-16 23:10:48

标签: vue.js webpack vuejs2

在我的Laravel项目中,我正在使用Vue库,并且尝试在模块中使用vue路由器,但是当我像往常一样尝试导入vue路由器时(请参见下面的代码),我得到了我的控制台中出现错误:未捕获的TypeError:window.Vue.use不是函数

任何想法如何解决此问题?我已经使用webpack创建了这个模块。

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

Vue.use(VueRouter)

import App from './App.vue'

const router = new VueRouter({
    routes: [{
        'path' : '/user/:id/'
    }]
});

new Vue({
  router,
  el: '#play',
  render: h => h(App)
});

2 个答案:

答案 0 :(得分:0)

我认为这是在laravel中加载/导入Vue的问题。
您是否尝试过将其更改为以下内容:

import Vue from 'vue/dist/vue'

window.Vue = Vue
Vue.use(VueRouter)

您可以尝试console.log(window.Vue)来查看Vue是否正确连接,或者window.Vue是否未定义。您也可以像console.log(Vue)这样尝试查看导入的内容。

答案 1 :(得分:0)

不确定,但这可能是我的疏忽所致。

问题是页面加载时按JS文件顺序排列。仍然不确定为什么会这样。我试图在标记之前使用生成的JS文件,但这没有用,所以我只是将JS文件放在Vue模板容器之后,然后它开始工作(请查看下面的代码段)。如果有人对此有任何解释,我会很高兴听到,因为现在我可以称其为“魔术”。

ForeignKey