我一开始写没有写箭头函数:
报错如下:
改成下面这种箭头函数就正常了:
有人知道是为啥吗
楼上不对,函数后面加括号是立马执行的意思,立马执行的话当前this是dom节点也就是a标签,而加了个箭头函数返回值是this.changeTheme('light'),意思就是我点击后执行这个箭头函数然后返回this.changeTheme('light'),就不是立马执行了
js 中 this 经过一个函数后会改变,es6 箭头函数就是为了解决这种问题,让函数里面和函数外部的 this 保持一致