听b站尚硅谷老师讲React的一些小笔记。
此时触发点击事件时,会出现undefined
在控制台查询changeWeather方法this的状态
发现this为undefined
在React中,构造器和render中的this都为当前类的实例对象。那么为什么changeWeather中的this为undefined呢?
因为changeWeather不是通过Weather实例调用的。
通过一个简单的例子说明
P1通过实例进行调用study方法,这时候this的指向为实例对象
x是直接调用study方法,这时候this的指向为window
而在类中有局部严格模式,所以直接调用时this的指向为undefined。
总结:
由于changeWeather是作为onClick的回调,所以不是通过实例调用的,是直接调用。
b站尚硅谷老师React教程链接
https://www.bilibili.com/video/BV1wy4y1D7JT?p=15&spm_id_from=pageDriver
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)