5

私は反応や角度を使ってWebアプリケーションを開発してきましたが、反応ブートストラップ(https://react-bootstrap.github.io/introduction.html)や角度ブートストラップのようなライブラリを人々が使う理由が混乱していますか?なぜなら私が作成するときには、対応するjsライブラリとlinkタグを使ってCSSフレームワークをロードしなければならないからです。そして、reactjs側では、コンポーネントに必要なクラスを置くだけです。それは簡単ではありませんか?簡単な方法があれば、reactjs-bootstrapが必要なのはなぜですか?

おかげで、

答えて

2

それはブートストラップのJavascriptの部分に関係しています。 CSSはリンクタグでうまく動作します。

しかし、ReactとAngularは、DOMを操作するためのフードの下にたくさんあるJavaScriptライブラリです。また、DOMを操作するためにBootstrapやjQueryのようなものを使用している場合、ReactやAngularでうまく動かないかもしれません。同じようなことを非常に異なるやり方で同時にしようとしているからです。ですから、DOM関連のJavascriptライブラリはReact/Angularでうまく再生できるように書き直す必要があります。反応し、ブートストラップドキュメントから

我々は、彼らが扱うすべてのJSある任意の含まCSS

は付属していません。

+0

そうですか?私は彼らと一緒に作業してきましたが、すべてがうまくいくようです。メニューがどのように動作するか、jsを使用するその他のCSSコンポーネントも同様です。また私の懸念の一つは、それらのライブラリの開発が遅れているか、私が使用したいブートストラップのバージョンを使用できないように思われることです。 – user3856437

+1

From Facebook: *リアクションは、React以外のDOMに対する変更を認識していません。それは、それ自身の内部表現に基づいて更新を決定します。同じDOMノードが別のライブラリによって操作された場合、Reactは混乱し、回復する方法はありません。* *これはReactとReactを組み合わせることは不可能ではないDOMに影響を与える他の方法では、それぞれが何をしているのか注意する必要があります。* DOMライブラリがどのように物事を操作し、予期しない結果を防ぐためにそれをコードすることができるのかを知っている場合にのみ使用してください。 –

+0

さて、私は啓発されています。私はあなたの答えの両方が好きですが、番号2は、それが実行されているためではなく、実行することが適切でなければならないという考えを私に与えます。私は常にソフトウェア開発者としてベストプラクティスを望んでいます。私は今から使うつもりです。ありがとうございました。 – user3856437

1

あなたがreactjsで作業することを選択したときには、あなたのDOMを更新し、高度な方法でDOMを更新するライブラリを選択しました。
DOMを最も速く効率的かつ効率的に更新する時期と方法を決定するために、仮想DOMとアルゴリズムの束(Diffing algorithmなど)があります。

これをDOMを更新する別のライブラリと組み合わせると、基本的にはそれらのアルゴリズムを中断してジョブを実行します。
パフォーマンスの側面のほかに、反応のパターンに対して作業しているときに、「コンポーネントパターン」を破棄します。
React-Bootstrapは、コンポーネントでコンポーネントパターンを維持するのに役立ちます。 cssとその他のリソースファイルを含めるだけです。
これらのコンポーネントは、ブートストラップのCSSファイル内のクラスに対応する適切なクラス名でHTMLをレンダリングする以外に何もしません。
他のすべてのコンポーネントと同じように、propsを介して行います。
このようにして、パターンを破ることなくネイティブな方法で他のコンポーネントとやりとりするブートストラップコンポーネントを作成できます。

ええ、cssjsファイルをダンプする方が簡単ですが、維持、デバッグ、スケールするのは難しいです。

関連する問題