Dwukropek JavaScript (operator bind)
Jak wiadomo, istnieje propozycja skrótu dla funkcji .bind()
, więc można napisać:
::this.handleStuff
I tak będzie działać w es5:
this.handleStuff.bind(this)
Moje pytanie brzmi: czy będzie można przekazać argumenty w ten sposób?
Mam na myśli sposób napisania tego za pomocą wspomnianego skrótu:
this.handleStuff.bind(this, 'stuff')
To dość powszechny wzorzec w Reaccie, więc miło byłoby go trochę skrócić.
116
Author: Michał Perłakowski, 2015-07-04
1 answers
Nie. Operator bind (propozycja spec ) występuje w dwóch smakach:
-
Metoda ekstrakcji
::obj.method ≡ obj.method.bind(obj)
-
Wywołania "virtual method"
obj::function ≡ function.bind(obj) obj::function(…) ≡ function.call(obj, …)
Żaden z nich nie posiada częściowego zastosowania . Dla tego, co chcesz, powinieneś użyć funkcji strzałki:
(...args) => this.handleStuff('stuff', ...args) ≡ this.handleStuff.bind(this, 'stuff')
139
Author: Bergi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-19 19:34:24
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-19 19:34:24