web-dev-qa-db-ja.com

React 16警告 "warning.js:36警告:サーバーHTMLが<div>に<div>を含むことを期待していませんでした。"

サーバー側レンダリングでReact 16 beta(react-fiber)を使用しています

私がこれを意味することを理解することは何ですか?

warning.js:36 Warning: Did not expect server HTML to contain a <div> in <div>.
15
David Furlong

反応コードでそのエラーを探して、SSR htmlを再水和できないときにこれが起こるようです。

https://github.com/facebook/react/blob/7a60a8092144e8ab2c85c6906dd4a7a5815cff1f/src/renderers/dom/fiber/ReactDOMFiberComponent.js#L1022

そのため、最初はクライアントとサーバーで異なるツリーを何らかの形でレンダリングしています。

16
w00t

からの速達を変更するだけです

<body>
    <div id="root">
        ${markup}
    </div>
</body>

<body>
    <div id="root">${markup}</div>
</body>

タグ間のスペースを削除する

17
Sagar Gavhane