2017-02-22 34 views
0

Я хочу показать индикатор «погрузки», если есть какие-либо невыполненные обещания. И это должно быть глобальным, т. Е. Я не хочу показывать/скрывать этот индикатор вручную в любом месте.Глобальный мониторинг невыполненных обещаний показать индикатор

Причина, по которой маршрут погрузки Эмбера очень ограничен. Он не работает с кнопкой «Назад» и компонентами. И я хочу показать этот индикатор «загрузки» всегда, если есть одно активное обещание. Неважно, что он делает, мне все равно, просто хочу показать индикатор.

Есть ли способ сделать это? Или это плохая идея?

+0

Это звучит как плохая идея, удобство использования и программная мудрость. – locks

ответ

1

Для глобального общего состояния в приложении вы можете использовать service для этого.

Сделайте свои компоненты для наблюдения за состоянием обещания, заявленного внутри service.

Вы можете прочитать больше о службе в,

https://guides.emberjs.com/v2.1.0/applications/services/

не злоупотребляйте его, поскольку он является глобальным состоянием, которое может сделать ваше приложение слишком усложняет управление.

+0

но как контролировать все обещания в приложении? конечно, я могу использовать сервис как оболочку для обещания и использовать его, но, например, как научить ember-data использовать эту оболочку? –

+0

адаптер? Я сделал это раньше, но адаптер там, где запрос уволен. Адаптер –

+1

- может быть, я в него врыву, спасибо. Фактически то, что я ищу, является аналогом модуля ObjectSpace Ruby, чтобы получить все выделенные обещания в приложении, не зная, где именно они были созданы. Или обещание обезьяны-патча –

 Смежные вопросы

  • Нет связанных вопросов^_^