我尝试使用 vue-resource,但得到“未捕获的 TypeError:window.Vue.use 不是函数”

Posted

技术标签:

【中文标题】我尝试使用 vue-resource,但得到“未捕获的 TypeError:window.Vue.use 不是函数”【英文标题】:I tried to use vue-resource and I got "Uncaught TypeError: window.Vue.use is not a function" 【发布时间】:2021-06-17 00:58:02 【问题描述】:

我是 Vue.js 的新手,最近我尝试使用 vue-resource 但我收到此错误:

Uncaught TypeError: window.Vue.use is not a function
   at vue-resource.js:1469
   at vue-resource.js:10
   at vue-resource.js:11 

我正在使用 Vue 3.0.7 和 vue-resource 1.5.2

我试图在node_modules/vue-resource/dist/vue-resource.js的vue-resource源代码中查找错误,在第1469行有这段代码:

    if (typeof window !== 'undefined' && window.Vue && !window.Vue.resource) 
      window.Vue.use(plugin);
    

我尝试在localhost:3000 的浏览器控制台中写入window.Vue,它被定义但window.Vue.use 没有。

这是我的index.html 文件的正文标签的结尾:

<!--some code -->
  <!-- Scripts -->
  <!-- adding hot reload -->
  <script src="/reload/reload.js"></script>
  <script src="node_modules/vue/dist/vue.global.js"></script>
  <script src="node_modules/vue-resource/dist/vue-resource.js"></script>
  <script src="public/script.js"></script>

</body>

</html>

这是我在 methods 属性中定义的使用 vue-resource 的方法:

            onSubmit() 
                console.log("Search");
                let path = "/search?q=".concat(this.search);
                this.$http.get(path)
                    .then(response => 
                        console.log(response);
                    );
            

【问题讨论】:

【参考方案1】:

好吧,我发现 vue-resource 不支持 vue3。它在 npmjs.com 中写道: 支持 Vue 1.0 和 Vue 2.0。并且没有提到 vue3。

【讨论】:

以上是关于我尝试使用 vue-resource,但得到“未捕获的 TypeError:window.Vue.use 不是函数”的主要内容,如果未能解决你的问题,请参考以下文章

与Vue.js的CORS问题

开始使用 vue-resource

从 vue-resource 切换到 axios

Vue-Resource 在 Ajax POST 调用中给出 TokenMismatchException

Laravel 和 Lumen ACL 与共享代码库

vue-resource:在拦截 ajax 错误时捕获“未捕获(在承诺中)”