私はこのような何かレンダリング例<Foo />
ためのコンポーネント、お持ちの場合:React:コンポーネントを別のコンポーネントに渡すことはできますか?
<div>
<Bar />
{/* ... */}
</div>
は、fooのプロパティとしてバーを渡すことが可能でしょうか? <Foo Bar={Bar}/>
。だから私はFooののレンダリング時にバーを参照することができます。これはちょうど誰かが私よりも知っているかどうかをチェックする、正直に言うと良いでしょう場合
render() {
const Bar = this.props.Bar;
return (
<div>
<Bar />
{/* ... */}
</div>
);
}
は私は知りません。
私がこのようなことをしたいのは、コンポーネントをテストしたいので、コンポーネントに偽の依存関係を挿入する方法を考えていたからです。あるプロジェクトでは、私はPreactを使用することを考えていましたが、これは浅いレンダーでは動作しませんでした。したがって、多分何らかの依存性注入を行うことを考えていました。
コンポーネントが使用するコンポーネントを通すことで、テスト中に模擬テストに合格することができます。
これは良い考えですか?本当に行く方法は?...
HOCは、同様の動作を複製するためのより良い代替方法です。この記事ではそのようなアプローチについて詳しく説明します。 https://medium.com/@franleplant/react-higher-order-components-in-depth-cf9032ee6c3e#.r4mbzunhu – Deadfish