使用vue的项目中,之前是用vue-resource组件进行异步通讯,而vue更新到了2.0之后,作者就放弃了对vue-resource进行维护,转而推荐axios。
案例如下:
axios.get('method.php', {
params: {
getall: 1
}
}).then(function (response) {
this.users = response.data;
}.bind(this)).catch(function (error) {
console.log(error);
});
在使用axios的过程中,发现.then({function(){//code}})和.catch({function(){//code}})代码块内的变量作用域是独立的,所以直接在.then块中直接用this是访问不到Vue实例的,要靠上面案例中的.bind(this)解决问题。