Vue3 目前无法使用 vue-resource
先说结论,Vue3项目当前无法继续使用vue-resource进行http请求今天为自己的Vue3.0项目配置http访问每次在main.js中进行导入后import VueResource from "vue-resource"app.use(router).use(store).use(VueResource).mount('#app')浏览器控制台就会报错Object.definePrope
·
先说结论,Vue3项目当前无法继续使用vue-resource进行http请求
今天为自己的Vue3.0项目配置http访问
每次在main.js中进行导入后
import VueResource from "vue-resource"
app.use(router).use(store).use(VueResource).mount('#app')
浏览器控制台就会报错
Object.defineProperties called on non-object
原因
Vue3将原本提供数据对象侦测的API由Object.defineProperties更换为了Proxy
而vue-resource中,就使用到了Object.defineProperties,运行后自然会报错
理由
proxy是真正的在对象层面做了proxy不会去改变对象的结构,Object.defineProperty需要转化数据对象属性为getter、setter 这是比较昂贵的操作
补充
vue-resource自Vue2.0开始就不再更新,所以目前来说Vue3是无法再使用这个插件,建议去使用axios进行http请求,但不保证将来vue-resource是否还会更新至支持Vue3,让我们等待吧【虽然不等也没办法】
解决
使用axios进行http通信
更多推荐
已为社区贡献2条内容
所有评论(0)