我有针对已转换应用的Webpack配置:
entry: {
'polyfill': './app/polyfill.js',
'lib': './app/lib.js',
'main': './app/main.js'
},
output: {
path: './bundles',
filename: '[name].js',
sourceMapFilename: '[name].map'
},
...
我希望从浏览器中的polyfill
标记加载main
和<script>
,并将lib
导出为CommonJS库。
lib
由Node后端使用,但包含一些app
模块,因此它与其他入口点一起构建)。正在编译应用程序,因此不可能仅在require
节点中./app
模块。
这里有什么选择?使用单独的Webpack配置和单独的Webpack运行只有一个吗?
答案 0 :(得分:2)
我想说最好将lib
与app
的webpack配置分开。由于lib
可以被两个模块(前端和后端)使用,因此它可以是一个可以在两端使用的库。
要使用webpack创建库,您可以使用下面的配置
entry: { lib: './app/lib' },
output: {
path: __dirname + '/lib', // path to output
filename: outputFile, // library file name
library: libraryName, // library name
libraryTarget: 'umd', // the umd format
umdNamedDefine: true // setting this to true will name the AMD module
},
详细讨论here。