2017-07-05 8 views
2

DEBUGでない場合にのみ、ファイルを本番環境ビルドにバンドルしたいと思います。条件付きファイルがwebpackにあります

私はwebpack.DefinePluginを使用し、変数DEBUG === trueを設定しました。

また

とJSファイルで

、私はこのように行うデフォルトのオプションで webpack.UglifyJsPluginを設定:
const A = DEBUG === true ? null : require('./some-debug.js'); 
//do things with A, for example 
console.log(A) 

は私が最終的バンドルファイルをチェックし、Aがヌルで置き換えられている(そう DefinePluginが正常に動作しています)、ファイル some-debug.jsの内容はまだバンドルjsにあります。

webpackにファイルを要求させないようにすることはできますか?

ps: を解決するにはresolve.aliasを使用できます。しかし、私はwebpack.config.js genericを維持したい、あまりにも多くのresolve.aliasエントリーを適用したくない。

ありがとう

答えて

1

3進演算子では機能しません。

let A; 
if (DEBUG === true) { 
    A = require('./some-debug.js'); 
} 
+0

ありがとうございます! – garyx

関連する問題