2017-08-04 9 views
0

私はReactで成分を伸ばしたいと考えています。私はread this in the docsを持っているので、コンポーネント間でコードを再利用するために継承の代わりにコンポジションを使用することをお勧めします。反応成分を伸ばす

これに基づいて私は以下を実装し、これが正しいアプローチだと考えました。 (それは働く)。以下のコードを参照してください。

class ComponentExtension extends Component { 

    //*** extras to extend the original component here ***// 
    //*** omitted for the purposes of this question ***// 

    render() { 
    return <OriginalComponent />; 
    } 

} 

はしかし、その後、更なる研究により、私はHigher Order Components in the docsに出くわしました。 2つのアプローチの違いは何ですか?あるインスタンスでは1つのアプローチを使用し、別のインスタンスでは別のアプローチを使用する必要がありますか?彼らは同じ問題を解決していますか?

class ComponentExtension extends OriginalComponent { 
     //*** extras ***// 
} 

をそして、あなたはHOCを使用している場合、あなただけの他に一つの構成要素をラップ:

答えて

0

コンポーネントを拡張したい場合は、このような何かを行う必要があります。

+0

私はもともとそれを行っていましたが、ここを読んだら、それをしないことをお勧めします。https://facebook.github.io/react/docs/composition-vs-inheritance.html継承の上に合成を選択する必要があります –

関連する問題