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/
添加回答
舉報