2016-06-17 10 views
1

各コンポーネントに接頭辞を追加するのではなく、すべてのReactコンポーネントを含む別のオブジェクト/クラスを作成したいと思います。たとえば、私は自分のカスタムスタイルと機能を持っているボタンを持つことができます。Reactjs内のオブジェクト接頭辞付きのカスタムコンポーネントライブラリの作成

たとえば、BootStrapにはクラスがありますが、ProjectButtonを作成する代わりに、オブジェクトの接頭辞が付いた別のButtonコンポーネントを作成したいとします。

私はjavascriptで良くないので、これを行う方法に関するいくつかのガイダンスが必要です。

class ProjectForm extends React.Component { 
<Project.Button />   //javacript complains 
<Button />    //works 
} 

class Project.Button extends React.Component { 
// ... 
} 

class Button extends React.Component { 
// ... 
} 

答えて

0

オブジェクトは、オブジェクトであり、クラスではありません。

// components.js 
export class Button1 extends React.Component { } 
export class Button2 extends React.Component { } 

// somewhere-else.js 
import * as Project from './components' 

.. 
render() { 
    return (
    <div> 
     <Project.Button1 /> 
     <Project.Button2 /> 
    </div> 
) 
} 
.. 
+0

感謝を:あなたはあなたのインポート時に、それらを名前空間を、その後いくつかのコンポーネントをインポートされますので、あなたは時々野生でこれを参照してくださいよ

var Project = { Button: class Button extends React.Component {} } .. render() { return <Project.Button /> } .. 

:あなたのオブジェクトは、あなたの内部クラスを表すキーを持つことができます。 Reactコンポーネントに名前空間を追加する方法を尋ねたはずです。 – hgill