今天在react中子父传参里, 点击按钮向父组件传递信息时出现了这个错误如图:↓

这个问题很明显, 从字面意思看就是props前面的这个值没有找到, 然后看源码里面, 前面是个this, 如下图:

也就是在点击下面的button按钮时, 本来应该执行上面的sendMessage, 将父组件内容改掉, 可是却没有找到props前面的this, 然后测试在sendMessage方法中直接打印this , 发现是 undefined, 也就是说根本就没有this, 当然无法调用this里面的props了. 

因此, 解决时要从this入手, 有两种解决方案:

①将上面的sendMessage函数写成箭头函数,这样它的this就是直接继承到了Child2.如图:

②手动改变this指向, 即在下面调用的时候用bind方法再指回this,如图

这两种办法都可以解决.  但是,  为什么刚开始那种写法   this指向的是undefined呢?.........哎这个还不太懂, 每次到this指向就很懵, 还要多请教学习 , 加油(ง •_•)ง

 

 

 

 

 

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐