#angular #server-side-rendering #angular-universal
#angular #рендеринг на стороне сервера #angular-универсальный
Вопрос:
Насколько я прочитал и реализовал, Angular Universal отображает HTML-код на сервере, но узлы DOM не используются повторно на клиенте. Я наткнулся на решения, в которых мы можем хранить HTTP-ответы, чтобы избежать HTTP-запросов на клиенте, но он все равно полностью отображает приложение снова. Более того, передача ответов API клиенту в HTML мне кажется, что я дважды передаю одни и те же данные в одном и том же HTML. (один раз в отображаемом контенте, один раз в TransferState). Есть ли лучший способ добиться этого? Возможно, есть способ указать angular повторно использовать существующий DOM, отображаемый с сервера? Или какой-то способ сообщить Angular, чтобы он не отображал определенный компонент в клиентском приложении
Комментарии:
1. Боюсь, так оно и работает. Интеллектуальная гидратация сгенерированного DOM не поддерживается в Angular (насколько мне известно, ни в каких рамках). Что касается transferState — при правильной реализации он должен передавать состояние только внутри сгенерированного HTML-кода, а не повторно запрашивать одни и те же данные.
2. Спасибо за ответ. Я считаю, что интеллектуальная гидратация теперь присутствует в React. И да, TransferState позволит избежать HTTP-запроса на клиенте.