версии приложения (lazy loading). Банальный пример: пользователь зашел на сайт, сидит там, в это время выкатывается новая версия приложения с какими-то изменениями (может быть как отдельный модуль, так и что-то основное). Пользователь переходит на страницу и получает ошибку, так как такого модуля (с таким хешем) уже нет. Пока есть 2 идеи. Первая - это просто обработка через написание кастомного ErrorHandler (такое уже реализовывал, всё хорошо, но кроме как поймать ошибку об уже несуществуещем файле нельзя. Это, к примеру, если изменилось что-то глобальное в приложение). Вторая - это стримить информацию об обновлении и в таком случае обновлять страницу. Может у кого есть более интересные идеи?)
Да как вариант можно иметь сокет сервер на ноде (самый простой вариант) и по аналогии с вебпаком кидать бродкаст сообщение с требованием обновить страницу, либо на стороне апи иметь эндпоинт, который будет тянуть из файла (из manifest.json), где будет объявлена версия приложения если версия отличается от локальной, то релоад страницы
можно через сервис воркер из коробки сделать https://angular.io/guide/service-worker-intro https://angular.io/api/service-worker/SwUpdate#swupdate
Есть три простых способа. Первый. Предзагружать модули. Второй. Оставлять несколько предыдущих версий на сервере. Третий. Оповещать пользователя о новой версии и предлагать перезапустить приложение. Применяя все эти подходы одновременно, в совокупности дадут положительный экспириенс.
Обсуждают сегодня