2016-08-30 9 views
0

フルパスを指定せずにreact-native/Libraries内のファイルをインポートできることに気付きました。
と同様に、反応するネイティブライブラリ内の関数のモジュールパス解決はどのように機能しますか?

const EdgeInsetsPropType = require('react-native/Libraries/StyleSheet/EdgeInsetsPropType'); 

は、この作業を行う方法
const EdgeInsetsPropType = require('EdgeInsetsPropType');
、同じですか?

答えて

0

EdgeInsetsPropTypeモジュールの場合、それらは同じものでなければなりません。そのモジュールをその名前で直接インポートできる理由は、this lineのためです。

@providesModule EdgeInsetsPropTypeコメントは、それを直接インポートできるようにするものです。 @providesModuleの仕組みがどういうものなのか、基本的な説明はここにあります。

パッケージャは2つの方法を使用してモジュールを検索します。最初は をdocblockヘッダに基づいています。最初の docblockに "@providesModule X"と書くとrequire( 'X')が有効になります。もう1つの方法は、ノードの 解像度です。

この説明はthis comment on Githubから取られました。

関連する問題