2016-06-26 14 views
1

私はノードと(今)反応ネイティブのために使用するモジュールを持っています。私は、実行するプラットフォームに応じてコードを選択的にエクスポートしたいと思います。これをデバイス上で実行することができれば、問題は解決しました。React Nativeパッケージャをモジュールでどのように検出できますか?

モジュール:デバイス上の

if(!react_native){ 
    exports.fs = require('fs'); 
} 

exports.print = function(str){ console.log(str); } 

var m = require('module'); 
m.print("hello world."); 

これを実行する方法はありますか?

index.jsだけが異なる2つのモジュールを別々に作成する必要はありません。

ありがとうございます!

答えて

2

簡単なチェック - 基本的なパッケージをロードするには:

var isNative = false; 
var Platform; 

try { 
    Platform = require('react-native').Platform; 
    isNative = true; 
} catch(e) {} 

if (isNative) { 
    console.log(Platform.OS, Platform.Version); 
} else { 
    console.log('node'); 
} 
+0

私は作品とは思いません。あなたはそれを実行しようとしましたか?私の例をもう一度見て、私はそれを編集しました。ノードのみの部分でrequire( 'fs')を試してください。 –

関連する問題