2017-03-01 5 views
0

現在、私が維持しているいくつかのアプリケーションに共通する一連のReactコンポーネントで構成されるnpmパッケージを作成しています。NPM向けモジュラーコンポーネントライブラリパッケージの作成

私は、このコンポーネントを必要に応じて個別にインポートすることを目的としています。たとえば、コンポーネントにAccordion、DropDown、Widgetがある場合は、そのうちの1つだけを使用していますが、そのコードだけを必要としたいと思います。

私の理解では、私は

import Widget from 'components/Widget'; 

代わりの

import {Widget} from 'components'; 

ような何かをできるようにする必要があるだろう。しかし、私は最初のバージョンは仕事を得ることができないということです。私はこのパッケージを公開していないので、 npmリンクを使って別のアプリケーションでテストしています。私は自分自身でこの問題を解決するためにGoogleに何があるかについてもわからないので、この問題に関する関連ドキュメントへのリンクもありがとう。

ありがとうございました。これが機能するためにはYacine Filaliは、上記の私の質問にコメントとして

まず、私は個々のファイルを持っている必要があります(この部分:

+0

最初の表記は、モジュールコンポーネント/ウィジェットからデフォルトの書き出しをインポートします。 2番目の表記法は、Widgetフォームコンポーネントの名前で名前付きエクスポートをインポートします。 Widget.jsが 'components'フォルダの下にない場合、最初の表記は機能しません:http://exploringjs.com/es6/ch_modules.html –

+0

ありがとうございました。私はすでにそれらを持っていましたが、私は誤ってサブディレクトリに自分のエントリポイントを設定すると、それは私のパッケージのルートになると仮定していた。最後にそれを分かりました。 –

答えて

0

ので、もちろん数分、私の質問をした後、私は問題を解決私はすでに考え出していた)。

しかし、私は間違ってそうpackage.jsonに、私は

"main": "./lib/index.js" 

が誤ったフォルダと仮定して設定していた。私のエントリファイルがでた私のパッケージのルートは、どのディレクトリに設定するつもりだったと仮定しました。構造はそこから読み取られる。ルートディレクトリにすべてを構築するために私の設定を変更した後、それは完全に働いた。あなたのインデックスに

export default Widget

コンポーネントで

0

(もちろん、私は今のlibフォルダのpackage.jsonを生成するように、より良い代替に取り組んでいます):

export { default as Component } from './Component'

関連する問題