Mam pytanie relavent na ten kod: https://github.com/reactjs/redux/blob/master/examples/async/containers/App.jsdlaczego trzeba powiązać funkcję w konstruktorze
szczególności:
constructor(props) {
super(props)
this.handleChange = this.handleChange.bind(this)
this.handleRefreshClick = this.handleRefreshClick.bind(this)
}
Chyba jej się 2 część pytania.
- Dlaczego muszę ustawić zmianę uchwytu jako instancja klasy
this.handleChange =
, nie mogę po prostu użyć funkcji statycznych dla handleChange i nazywają to bezpośrednio ze w klasieonClick={handleRefreshClick}>
? - Nie mam pojęcia, co się dzieje tutaj:
this.handleRefreshClick.bind(this)
Thanks
Prawdopodobny duplikat [użycia metody "wiązania" JavaScript] (http://stackoverflow.com/questions/2236747/use-of-the-javascript-bind-method) – ctrlplusb
niezupełnie, nie całkiem rozumiem w Kontekst klasy, szczególnie numer 2 – Saad
Nie zmienia znaczenia "bind". Używasz 'bind', aby utrzymać zakres do' this'. W kontekście reakcji pozwala ci to nazywać takie rzeczy jak 'this.setState' itp. – ctrlplusb