2016-06-23 10 views
1

のWebPACKであるので、私は私のES6モジュールのいくつかは、インポートすることを私のwebpack.config.jsで外部設定されている:モカカントロード・モジュールは、外部

// webpack config: 
externals: { 
    'ExternalConfig': JSON.stringify(require('./config/config.dev.json')) 
} 
// ES6 modules: 
import ExternalConfig from 'ExternalConfig' 

私は、インポートモジュールのモカ・テストを実行するときにモジュールとして外部にしてからモカがスローするエラー:モジュール 'ExternalConfig'を見つけることができない

この問題を解決するために外部をmochaに渡す方法はありますか?

+1

私はあなたが 'externals'オプションを誤解していると思います。 [docsに従う](http://webpack.github.io/docs/configuration.html#externals)、 'externals'オプションは' output.library'オプションと組み合わせて使うべきです。あなたは正確に何を達成しようとしていますか? –

+0

dev/prod設定ファイルのパスをアプリケーションに渡しています。アプリは静的で、正しい設定パスはnpmスクリプトとenv設定に応じてバンドルされています。 – msmfsd

+0

'resolve.alias'の使用はどうですか? –

答えて

1

を試してみては負荷設定のための場所ではないのWebPACKの冒頭でJSONを必要とすることができます。私は今、ノードプロセスenv globalに基づいて自分の設定ファイルを読み込みます。つまり、mochaはwebpack configを実行する必要はなく、期待どおりに動作します。

+0

ノードサーバーがない場合はどうなりますか?私はあなたと同じことをやっていたのと同じエラーが出ています。私は展開していた環境に応じてjsonからいくつかの設定をロードしていますが、これをnginxサーバー上でスタンドアロンとして扱います。 何かご意見は? – elQueFaltaba

0

より良いあなたのような、

const devConfig = require('./config/config.dev.json'); 

// webpack config: 
externals: { 
    'ExternalConfig': JSON.stringify(devConfig); 
} 

// ES6 modules: 
import ExternalConfig from 'ExternalConfig' 

jhnnsのWebPACKの外観で述べたように、この

+0

RM-123ありがとうございます。 Mochaはwebpack configを実行しないので、node_modulesでそれを見つける必要があると考えます。 – msmfsd

関連する問題