感谢您阅读我的问题 .
我已经读过我的问题
VUE JS 2 + WEBPACK Cannot read property 'get' of undefined VUE RESOURCE
但我的系统没有阅读Vue var :(
我有一个vue组件调用app.vue,我需要使用vue-resource从我的帖子中获取数据 . 但错误很多次是:
TypeError: Cannot read property 'post' of undefined
at VueComponent.loadingProcess
你有想法解决它吗?
我的app.vue
<script>
var Vue = require('vue');
//Vue.use(require('vue-resource'));
//Vue.use();
export default {
data () {
return {
msg: 'Hello from vue-loader! nice!',
user: {}
}
},
mounted: function () {
this.loadingProcess();
},
methods: {
loadingProcess: function () {
var urlPost;
var answQSend = {...};
var that = this;
var jsonSend = {
"form_data": answQSend,
"prod_id": 3
};
Vue.$http.post(urlPost, jsonSend, {
"headers": {
"content-type": "application/json"
}
})
.then(function(response) {
})
...
提前致谢!
2 回答
首先,感谢@Bert耐心帮助我找到解决方案
在我的main.js中,我改变了这一行
对于
并使用
然后,在我的app vue组件中,我改变了
对于
那样我们修正了错误!
您使用的是导出默认脚本,因此您的this关键字无权访问Vue实例原始模块,而是访问导入的对象组件 . 最可能的情况是,对于require,vue-resource仅对原始模块可用,因此使用"vue-resource"中的import VueResource,使用es6语法,vue-resource库在内部模块被提升之前,在评估和缓存之前浏览器和Vue实例一起 . 在某些情况下,人们不使用箭头功能并超出范围 . 另一种方法是使用Vue实例本身而不是导出默认对象 . 看看http://voidcanvas.com/import-vs-require/你可能会比我做得更多 .