明明定义了却报“xxx is undefined”的错误

明明定义了却报“xxx is undefined”的错误
我遇到这个问题是在使用promise的时候,解决方法其实很简单就是在外面多加一行代码const _this = this;就可以了。
我对es6学识浅薄,大概知道应该是作用域的问题,后面去搜了一下,稍微做出一点解释:
vue中的this是指向实例,相当于父级,因此指向指不到子级中,所以需要一个变量_this存储this的指向;
其实应该还有一种方法是不用考虑const _this = this;,就是将.then(()=>{}).catch(()=>{})中的function换成箭头函数,因为箭头函数中的this是指向当前作用域的,所以不需要const _this = this;

你可能感兴趣的:(vue,es6,javascript)