我的准备好方法中包含此代码:
this.$http.get('url',{},{
headers: {
"X-App-Token": "token"
}
}).then( (data) => this.$set('cdata',data.data))
.catch( (error) => console.log('Got a problem'+error));
并且它运作良好,问题是当我将它移动到方法对象中的另一个功能时它不起作用。
ready(){
this.getJsonData();
},
methods: {
getJsonData: () => {
this.$http.get('url',{},{
headers: {
"X-App-Token": "token"
}
}).then( (data) => this.$set('cdata',data.data))
.catch( (error) => console.log('Got a problem'+error));
},
},
错误:
src\src\App.vue:23 Uncaught TypeError: Cannot read property '$http' of undefined
//this becomes undefined.
答案 0 :(得分:0)
我认为可能是使用箭头来生成函数。可能导致该函数处于未定义的范围内?试试这个:
methods: {
getJsonData(){
this.$http.get('url',{},{
//...
答案 1 :(得分:0)
对于任何试图解决此问题的人,您都缺少vue.use()
要解决此问题,您需要添加
import VueResource from 'vue-resource';
Vue.use(VueResource);
到你的main.ts并且应该全部修复