有害であると思われるDOMツリーに自分自身を追加する反応のデフォルトの方法
8438 ワード
せっせと
これをするな
<body>
<div id="root"></div>
</body>
const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);
代わりにこうする
<body>
<div data-role-react-root></div>
</body>
const rootElement = document.querySelector('[data-role-react-root]'),
ReactDOM.render(<App />, rootElement);
何を話しているのですか。
あなたが反応しているか、the most basic of its tutorialsに続いたならば、チャンスはあなたが非常によく知られている以下の断片を見つけるでしょう
<!-- here reduced to the bare minimum for simplicity's sake -->
<body>
<div id="root"></div>
</body>
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
この<div id="root"></div>
プラスのJavaScriptのスニペット、またはそれらの亜種の一つは、どこにでもあります:チュートリアル、公式ドキュメント、CREATEのようなツールは、APPとNX、オンラインサンプルを反応させます.至る所で.
ここでは、これが有害である点に悪い理由です.
それはなぜ有害なのか
一言で言えば
<body>
<div id="root"></div>
</body>
const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);
<body>
<div data-role-react-root></div>
</body>
const rootElement = document.querySelector('[data-role-react-root]'),
ReactDOM.render(<App />, rootElement);
あなたが反応しているか、the most basic of its tutorialsに続いたならば、チャンスはあなたが非常によく知られている以下の断片を見つけるでしょう
<!-- here reduced to the bare minimum for simplicity's sake -->
<body>
<div id="root"></div>
</body>
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
この<div id="root"></div>
プラスのJavaScriptのスニペット、またはそれらの亜種の一つは、どこにでもあります:チュートリアル、公式ドキュメント、CREATEのようなツールは、APPとNX、オンラインサンプルを反応させます.至る所で.ここでは、これが有害である点に悪い理由です.
それはなぜ有害なのか
一言で言えば
<div class="some-class"></div>
<a href="/somepage#pricing">Pricing</a>
<!-- more code -->
<section id="pricing">
<!-- awesome pricing table -->
</section>
<div data-special>Such special, much data</div>
関心のこの分離(クラスを介してスタイリング、IDを介してナビゲーション、データ属性を介して特別な意味)は、あなたが最も根本的にあなたのキャリアのいくつかの時点で自分自身を見つける場合は、反応ルート要素として<div id="root"></div>
を使用しているいくつかの有害な状況を回避するのに役立ちます.有害状況
<div id="root"></div>
#root {
border: 2rem furry pink;
}
#root
が使われる場所のためにコードベースを捜します.アランは、我々の友人
id="root"
を見つけます.アランは、彼がちょうどそれのための唯一の理由を取り除いたと思います、そして、全部の線を削除してください.
コーヒーの一口、生産への展開、そして仕事は重要な会議の直前に行われます.
カオスは起こります.
有害状況
<div id="root"></div>
<div id="root"></div>
を使用します. <div id="react-base"></div>
ReactDOM.render(<App />, document.getElementById('react-base'));
結論
これらの有害な状況の両方は、私に過去20年にわたって複数回起こりました.
最初は、私はアランかXYZでした、最近、私はボブかスーでした.
私たちはそれを避ける知識を持っていた.何か私たちのキャリアの最初の数ヶ月間に学んだ.
何か古い男が教えてくれたし、忘れてしまった.
何がベストプラクティス
HTML、CSS、およびJavaScriptの操作
スタイリング目的のための
あなたがそれを尊重することを覚えている場合は、作品驚異.
イメージクレジット
Vladyslav CherkasenkoのUnsplashによる
Reference
この問題について(有害であると思われるDOMツリーに自分自身を追加する反応のデフォルトの方法), 我々は、より多くの情報をここで見つけました https://dev.to/trumbitta/react-s-default-way-of-appending-itself-to-a-dom-tree-considered-harmful-36dテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol