Я разработал предварительное использование (аналогично React-SNAP) в моем приложении React 18 (что означает, что у меня есть индекс. HTML, генерируемый во время процесса сборки и реагирует увлажняет его). Я использую следующий код в своем основном recait index.ts (как это было рекомендовано в документах React-Snap): < /p>
const rootElement = document.getElementById("root")!;
const isSsr = rootElement.hasChildNodes();
const reactNode = (
(
)}
>
);
if (isSsr) {
hydrateRoot(rootElement, reactNode, { onRecoverableError: console.log });
} else {
createRoot(rootElement).render(reactNode);
}
< /code>
Этот код, похоже, работает хорошо для большей части страниц, и я получаю следующую правильную разметку в HTML (один html Kell Node insite #ROOT): < /p>
...
< /code>
Однако для некоторых страниц я вижу следующую аномалию: < /p>
...
...
< /code>
SO #ROOT теперь содержит двух детей вместо одного. HTML, сгенерированный Prerenderer, также выглядит хорошо.
Подробнее здесь: https://stackoverflow.com/questions/795 ... s-it-twice