Если шаблон Angular2 зависит от данных для отображения, и эти данные еще не загружены, это приведет к разрыву всего приложения, что потребует перезагрузки его страницы.Показывать страницы до того, как их данные будут загружены в Angular2
Решение проблемы Angular2 является решением этой проблемы. Резольверы предотвращают загрузку страниц до тех пор, пока их обещание или наблюдаемое решение не будет устранено. Но проблема в том, что страница не будет отображаться вообще до тех пор, пока резольвер не решит.
Что произойдет, если вы хотите, чтобы страница отображалась, например, за спиннером, и просто данные появляются после ее доступности? Есть ли способ сделать это в Angular2, который по-прежнему использует преобразователи, или это единственный способ реализовать собственные вызовы службы в компоненте, с логикой в шаблоне, чтобы предотвратить использование данных, если оно недоступно? Например, каждый {{ foo.bar }}
в ваших шаблонах должен быть изменен на {{ foo && foo.bar }}
.
Есть ли подход, основанный на использовании Angular2?
Спасибо. Мой вопрос в основном заключается в том, как делать такие вещи (множественные прядильщики, отображение страниц), сохраняя шаблон резольвера. В противном случае вам нужно добавить пользовательскую логику в свой компонент, чтобы определить, загружены ли данные. Я спрашиваю, как отображать страницу без необходимости этого делать. –
Я не думаю, что это возможно. Цитирование «Например, в приложении-контактах, где мы можем щелкнуть контакт, чтобы просмотреть сведения о контакте, контактные данные должны были быть загружены до того, как будет создан экземпляр компонента, который мы маршрутизируем» (https: // blog .thoughtram.io/angle/2016/10/10/resolving-route-data-in-angular-2.html) – Matt
Если компонент не получает экземпляр перед выполнением Resolver, нет возможности отобразить представление компонента , В любом случае, это одна из целей Resolver. – Matt