Экран загрузки предварительной загрузки для Angular2

Я ищу экран загрузки перед загрузкой в ​​соответствии с строками этого примера, но для Angular2.

Я могу предложить простой подход CSS.

Прежде всего добавьте .loading div в основную HTML-страницу, он должен следовать основному компоненту компонента приложения. Например:

  

Loading...

Теперь вы можете настроить таргетинг и стиль заставки с помощью my-app:empty + .loading CSS-селектора и заставить его исчезнуть, как только приложение получит bootstraped. Пример:

 /* default .loading styles, .loading should be invisible, opacity: 0, z-index: -1 */ .loading { opacity: 0; transition: opacity .8s ease-in-out; position: fixed; height: 100%; width: 100%; top: 0; left: 0; background: #000; z-index: -1; } /* .loading screen is visible when app is not bootstrapped yet, my-app is empty */ my-app:empty + .loading { opacity: 1; z-index: 100; } 

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

Вот простая демонстрация:

Демо: http://plnkr.co/edit/v8FtkSluRDSrkcq4v7a1?p=preview

Я пошел с простым подходом (мне тоже понравился другой ответ), используя FontAwesome spinners:

  
Something witty for your userbase

Почему бы не попробовать этот подход:

   

App is Loading

Please stand by for your ticket to awesome-town!

я думаю, лучший подход заключается в том, чтобы иметь встроенный стиль в загрузке div HTML (чтобы показать). Затем в css у вас есть class, чтобы скрыть и использовать ngOnInit, чтобы включить этот class в загрузочный div.

В этом случае у нас будет html-рендеринг стиля в начале. Показывая загрузку и после всех (скачайте css и запустите js), у него будет class, который скрывает его.

 export class AppComponent implements OnInit { public loaded=false; ngOnInit() { this.loaded=true; } } 
  .loading.loaded { z-index: -1; opacity: 0; } 
 

Вы можете сделать что-то вроде этого:

           
  • Angular2 - * ngFor / цикл через json-объект с массивом
  • Угловое redirect на страницу входа в систему
  • Как получить элемент dom в угловом 2
  • Просмотр не обновляется при изменении в Angular2
  • Как привязать к атрибуту data- * в угловом2?
  • Как применять фильтры к * ngFor?
  • Угловое 2 - Что эквивалентно корневой области?
  • Как получить ссылку на компонент, связанный с ElementRef в Angular 2
  • Связывание событий при использовании ngForTemplate в Angular 2
  • В чем разница между @ViewChild и @ContentChild?
  • Загрузка файлов с помощью API-интерфейса Angular2 в REST
  • Interesting Posts

    Как заставить Windows 7 запрашивать «свежий» IP-адрес с сервера DHCP?

    Ошибка установки углового с использованием npm из-за необходимости использовать строку

    Как скрыть общественные методы от intellisense

    Существуют ли какие-либо преимущества для работы 64-разрядной ОС на 4 ГБ ОЗУ?

    Каково использование faces-config.xml в JSF 2?

    Каков правильный способ использования JSON.NET для анализа streamа объектов JSON?

    Android: автоматически показывать мягкую клавиатуру, когда фокус находится на EditText

    Как переименовать файлы с пробелами с помощью оболочки Linux?

    Линейное искусство Despeckle

    Несколько методов HttpPost в controllerе Web API

    Создание случайных чисел без дубликатов

    Прочтите строку подключения из web.config

    Каков наилучший способ определить переменную сеанса, является пустой или пустой в C #?

    Установка кодировки символов Java по умолчанию?

    Изменить часовой пояс в объекте POSIXct

    Давайте будем гением компьютера.