Сообщение от FINoM
|
Ну а если мы хотим вызвать цепочку, то получится так: ...add().add().add()() ← видишь?
|
круто, оказывается есть и преимущества
Сообщение от FINoM
|
Ты же хочешь использовать всякие вещи, типа this.state в функциях. Получается, что в обработчиках (oncomplete, onfailure) this будет элементом из события (в случае прямого запуска это будет window), а в функциях из цепочки this будет являться объектом chain?
|
не понял, да, хочу использовать this.state в функциях. Плюс, не хочу использовать много разных правил для разных случаев, поэтому правило одно: в обработчике события this указывает на объект, который сгенерировал событие.
Сообщение от FINoM
|
Кто определяет как должно быть?
|
я имел в виду, что твой пример скрывает недостатки твоего подхода
Сообщение от FINoM
|
Блин, привел же.
|
ладно, привел. Но по нему
непонятно, достаточную функциональность предоставляет твоя функция или нет. Приведешь самую сложную цепочку, с которой сталкивался, с указанием всех данных, которые передаются? Может вообще окажется, что прав
B~Vladi
Сообщение от FINoM
|
Значит для него вложенные вызовы — это нормально.
|
нет, он их по классам распихивает и большая вложенность не возникает
Сообщение от FINoM
|
Описана задача сделать этот код более плоским.
|
называй как хочешь. Ты специально не хочешь понимать о чем я говорю? Смотри подчеркнутый фрагмент выше. Если ты считаешь, что возможностей твоей функции тебе хватит или тебя устраивает как будет выглядеть код если не хватит, дальше обсуждать это нету смысла.
подведем итоги: ты считаешь, что твое решение лучше, потому что проще. Я считаю, что оно незначительно проще и что если понадобится больше возможностей они уже будут. По-моему по этому поводу уже все сказано, разве что если ты приведешь пример сложной цепочки. Можно разве что сравнить твое решение с другими.
Сообщение от FINoM
|
Каких именно? Приведи хотя-бы одно.
|
да тот же async, который ты в статье упомянул, например. Но ни одним таким не пользовался и по сути не написал ни одного приложения на ноде, если ты об этом.
UPD и можно еще добавить, что B~Vladi считает, что поблема не существует. Тут опять же можно столкнуться с задачей, для которой нужно создавать объекты просто чтобы избежать вложенности.