У меня есть приложение для рендеринга на стороне сервера (с переходом), и у меня есть страница 404, которую я вставил в ленивый модуль (поэтому я не увеличиваю размер загруженного Javascript).
Этоработает нормально, но при работе на стороне клиента наблюдается некоторое мерцание, которое, я думаю, связано с загрузкой фрагмента JS после завершения загрузки основного блока.
Учитывая, что эта страница содержит только статические ссылки и одну routerLink
клиентская сторона вообще не нужна, и мне интересно, есть ли способ отключить клиентскую сторону на определенных URL-адресах
Редактировать: , как предложено в комментариях, которые я попытался условнозагрузите приложение.Я не могу использовать URL-адрес в качестве условия, потому что сервер отвечает 404 на несуществующий URL-адрес (на данный момент перенаправление отсутствует).Поэтому наиболее подходящим для использования является TransferState
, который я успешно настроил на стороне сервера, и он генерирует некоторый вывод непосредственно перед закрывающим тегом body
.
К сожалению, я не нашел способа правильносоздать экземпляр TransferState
в main.ts
, потому что он должен быть импортирован с помощью BrowserTransferStateModule
, и я не вижу возможности импортировать модуль Angular в файл main.ts
.
Я попытался создать экземпляр непосредственно с помощьюinitTransferState
функция, но кажется, что она не предназначена для использования вне модуля, так как я получаю сообщение об ошибке:
ERROR in ./src/main.ts
Module not found: Error: Can't resolve '@angular/platform-browser/src/browser/transfer_state' in 'G:\Documents\Projets\Myapp\Sources\master\frontend\src'
Любая идея, кроме грязной десериализации?