web-dev-qa-db-ja.com

不明なエラー:_registerComponent(...):ターゲットコンテナはDOM要素ではありません。(…)

React code:

import React from 'react';
import ReactDOM from 'react-dom';

ReactDOM.render(
  <div id="root">
  <h1>Hello, world!</h1></div>,
  document.querySelector('#root')
);

これはエラーです:

bundle.js:1194不明なエラー:_registerComponent(...):ターゲットコンテナはDOM要素ではありません。(…)

9
flower

どうやら、reactがコンテナを見つけられない理由であるページに要素を追加するのを忘れたので、この種の問題を回避するには、識別子ルートでdiv要素を作成するか、セレクタを変更する必要があります。

import React from 'react';
import ReactDOM from 'react-dom';

ReactDOM.render(
  <div id="root">
  <h1>Hello, world!</h1></div>,
  document.querySelector('body')
);

または

<div id="root"></div>
12
Hajji Tarik

これを試して:

Htmlファイル内:

<div id="root"></div>

JSファイルで:

ReactDOM.render(
    <div>
        <h1>Hello World!</h1>
    </div>,
    document.getElementById('root')
);
2
Leo Nguyen

HtmlページでこのID rootを定義するのを忘れたようです。htmlページにはこのidを含める必要があります。この行を本文に入れてください。

<div id="root"></div>

idを間違った場所で定義しました。この部分を使用してください:

ReactDOM.render(
  <div>
     <h1>Hello, world!</h1>
  </div>,
  document.querySelector('#root')
);
2
Mayank Shukla

一般的には次のようになります-> ReactDOM.render(Component, Container)

document.querySelector()は、コメントでMayankが提案したように、index.htmlのコンテナを指す必要があります。 (document.querySelector('.container')

ReactDOM.render(<App />, document.querySelector('.container')のように作成した反応コンポーネントを必ず渡してください

1
skAstro