将 Webpack 入口点之一导出为库

Export one of Webpack entry points as a library

我有转译应用的 Webpack 配置:

entry: {
    'polyfill': './app/polyfill.js',
    'lib': './app/lib.js',
    'main': './app/main.js'
},
output: {
    path: './bundles',
    filename: '[name].js',
    sourceMapFilename: '[name].map'
},
...

我想从浏览器中的 <script> 标签加载 polyfillmain,并且 lib 导出为 CommonJS 库。

lib 由 Node 后端使用,但包含一些 app 模块,因此它与其他入口点一起构建)。该应用程序正在转换中,因此不可能仅从 ./apprequire 模块在 Node.

这里有哪些选项?使用单独的 Webpack 配置和单独的 Webpack 运行是唯一的吗?

我认为最好将 libapp 的 webpack 配置分开。由于 lib 可以被两个模块(front-end 和后端)使用,它可以是一个可以在两端使用的库。

要使用 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
  },

对此进行了详细讨论