こんにちは私は現在、webpackを使用してプロジェクトファイルを1つのファイルにバンドルしています。しかし、私はすべての私の設定が設定されている私のconfig.jsファイルをバンドルするwebpackをしたくありません。私はこれを出力フォルダ内で別々のままにしたいが、これを達成するためには確かではない。webpackでバンドルされている.jsファイルを防止するには
私の現在の設定は
//index.js file
#!/usr/bin/env node
'use strict';
let config = require('config.js);
let read = require('read.js);
console.log('i am running through command line');
//read.js file
'use strict'
console.log('read a text file');
//config.js
'use strict';
module.exports = {
name: 'test'
}
//webpack.config.js
let webpack = require('webpack');
let path = require('path');
let fs = require('fs');
let nodeModules = {};
fs.readdirSync('node_modules')
.filter(function (x) {
return [ '.bin' ].indexOf(x) === -1;
})
.forEach(function (mod) {
nodeModules[mod] = 'commonjs ' + mod;
});
module.exports = {
entry: [ 'babel-polyfill', './index.js' ],
target: 'node',
node: {
__dirname: true
},
output: {
path: path.join(__dirname, 'webpack_bundle'),
filename: '[name].js',
libraryTarget: 'commonjs'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'shebang-loader'
},
{
test: /\.js$/,
loader: 'babel-loader',
query: {
presets: [ 'es2015' ]
}
} ]
},
resolve: {
extensions: [ '.js' ]
},
plugins: [
new webpack.BannerPlugin({banner: '#!/usr/bin/env node', raw: true
})
]
,
externals: nodeModules
};
。注:私はindex.js
ファイルを含むフォルダwebpack_bundle
を取得webpack
コマンドを実行したときに、私は非常に簡潔現在
のためのコード例を簡素化している - インデックス.jsファイルには、依存関係config.js
とread.js
が含まれています。しかし、私が望むのは、read.js
依存関係をindex.js
ファイルにバンドルするのに対して、config.js
依存関係はバンドルされたWebpack出力で必要となる別のファイルに外部依存することです。したがって、webpack
コマンド(index.js
およびconfig.js
)を実行した後に、フォルダwebpack_bundle
に2つのファイルが含まれている必要があります。私はすでに外部オブジェクトconfig: './config.js'
に次のキー値を追加して外部を修正しようとしましたが、これは機能しませんでした。私はエントリーポイントとしてconfig.jsを指定することによって余分なエントリーポイントを作成しましたが、これもうまくいきませんでした。私はこれを理解することができず、webpackのドキュメントはこれを達成する方法についてはっきりしていません。助けてください!
ここに記載されているローダー配列で除外を使用してください。https://webpack.github.io/docs/configuration.html#module-loaders –
私はあなたの提案を試みましたが、これは – Dev