1 回答

TA贡献1898条经验 获得超8个赞
我有几个问题 1) React 如何知道类ChangeState2 是一个没有“函数”的方法?
它与 React 无关,但与 ES6 无关。类是语法糖,它们只是特殊函数。你所看到的方法只是分配给方法名称的函数的简写。所以当你写这个的时候:
class fooClass {
bar(...) {}
}
fooClass实际上是一个函数,其中的方法例如被写入 。另外,你想看看,barfooClass.prototype
从 ECMAScript 2015 开始,引入了对象初始值设定项上的方法定义的简短语法。它是分配给方法名称的函数的简写。
const obj = {
foo() {
return 'bar';
}
};
console.log(obj.foo());
您可以了解有关 MDN 类和函数定义 MDN 的更多信息
来到问题的第二部分,
2)我知道我可以在上述所有方法中传入newName作为参数,但我必须在所有方法的渲染中绑定“THIS”。例如,对于方法名称.bind(this,“newNamehere”)
此语法是实验性类属性,您可以使用它而不是在构造函数中使用该方法。请注意,此语法可能会更改。bind
阅读更多 https://reactjs.org/docs/react-without-es6.html#autobinding
https://babeljs.io/docs/en/babel-plugin-transform-class-properties/
添加回答
举报