vue过程中遇到的Uncaught (in promise) TypeError: Cannot read property '$message' of undefined

在写一个vue项目,想把项目中使用的vue-resource换成vue-axios,语法从http.$http.post变为axios.post,之后,紧接在下面的语句this.$message出现如下报错

原来是http.$http.post时this.$message不报错,改成axios.post时this.$message报错,猜想可能是this指向有变化,后查找发现function(response){this.message...}和(res)=>{this.message...}中this的指向是不同的,箭头函数并不简单是匿名函数的简写:

把匿名函数改成箭头函数后成功:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容