Я новачок у використанні класів ES6 з React, раніше я прив'язував свої методи до поточного об'єкта (покажіть у першому прикладі), але чи дозволяє ES6 мені постійно прив’язувати функцію класу до екземпляра класу зі стрілками? (Корисно при передачі як функція зворотного дзвінка.) Я отримую помилки, коли намагаюся використовувати їх як можна з CoffeeScript:
class SomeClass extends React.Component {
// Instead of this
constructor(){
this.handleInputChange = this.handleInputChange.bind(this)
}
// Can I somehow do this? Am i just getting the syntax wrong?
handleInputChange (val) => {
console.log('selectionMade: ', val);
}
Так що, якби я перейшов SomeClass.handleInputChange
, наприклад setTimeout
, до нього буде присвоєно екземпляр класу, а не window
об'єкт.