我有app.js
导入axios和VueAxios为:
Vue.use(VueAxios, axios);
然后调用我的组件:
Vue.component('api-call', require('./components/PostComponent'));
在我的PostComponent
我有一个简单的axios如下:
<script>
export default {
// name: "PostComponent"
data() {
return {
post: {},
}
},
methods: {
getPosts: () => {
console.log('started');
//let that = this;
let uri = 'https://jsonplaceholder.typicode.com/posts';
this.axios.get(uri).then((response) => {
console.log(response);
})
}
},
mounted(){
this.getPosts()
}
}
</script>
因为我希望在组件加载开始时执行此操作,所以我正在使用mounted
(为什么Vue没有构造函数让我困惑,甚至在isMounted
模式上传递了反应。)< / p>
我做错了什么?
感谢, 芽
答案 0 :(得分:0)
您无法使用箭头功能进行方法声明。
请参阅https://vuejs.org/v2/api/#methods
请注意,您不应使用箭头功能来定义方法 (例如加号:()=&gt; this.a ++)。原因是箭头函数绑定了 父上下文,所以这不会像你期望的那样是Vue实例 this.a将是未定义的。
这是正确定义方法的两种方法
getPosts: function() {
}
(如果您可以使用ES6)
getPosts() {
}