我试图将道具从父组件传递到子组件。 虽然我在调用this.props内部渲染它的工作正常但是当我在函数内部调用它时将无法渲染(帮助我进行计算),控制台值是“未定义”。 请解释一下这个问题吗?
答案 0 :(得分:3)
该类的函数成员是?换句话说,函数是否已绑定到类?
如果函数不知道它属于哪个类,则值将是未定义的。将它绑定到一个班级,然后你就会得到你的价值。
例如 -
未绑定的功能将如下所示
abc() {
console.log(this); //this will be undefined here
}
绑定功能将如下所示
constructor() {
this.abc = this.abc.bind(this);
}
abc() {
console.log(this); //this will have a value
}
如果您想跳过写bind
,可以按照新语法
abc = () => {
console.log(this); //this will have a value
}
最后,您将调用您的函数this.abc()
答案 1 :(得分:1)
请在构造函数中或使用.bind