Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.09.2017, 20:45
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Angular 2+: Как получить результат колбека в компоненте?
Стандартная ситуация. У нас есть какой-то компонент, который при изменении внутри себя запрашивает данные с сервера и как-то обрабатывает их (в примере просто показывает прелоадер). В первом Ангуляре это делалось элементарно
<loader change="loadData()">

loadData возвращает промис, который ловит компонент лоадера и использует в своих целях.

В Ангуляр 2+ рекомендуют в @Output запихивать EventEmitter и плясать от этого. Разумеется, в таком случае никакой промис прочитать не удастся и приходится городить структуру с колбеками (loader-1 в примере)

Если делать как в первом Ангуляре (loader-2), то получается достаточно топорно, но могут возникнуть проблемы. В примере дочерний компонент не может засетить данные в родительский.

Как вы решаете подобную задачу?

Пример:http://plnkr.co/edit/tAUXaV26C9hCOQ0X89P5?p=preview
Ответить с цитированием
  #2 (permalink)  
Старый 29.09.2017, 08:58
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Может с архитектурой Redux лучше познакомиться?
Ответить с цитированием
  #3 (permalink)  
Старый 29.09.2017, 10:51
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

destus, перепешите, пожалуйста, мой пример на Redux. Сомневаюсь, что это будет проще
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как получить innerHTML при клике prope Общие вопросы Javascript 3 10.01.2014 17:13
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
как получить результат умножения b и e vmtiu Элементы интерфейса 5 27.11.2009 19:20
Подскажите, пжлст, как вывести в тот же документ результат ф-ции? LexXxeL Элементы интерфейса 4 13.05.2009 13:26