默认情况下,Webpack会为浏览器输出一个包。如果您希望自己的代码在其他项目中可用,则可以在Webpack配置中使用output.library
和output.libraryTarget
。举个例子:
output: {
library: 'MyComponentName', // Your component/library name
libraryTarget: 'umd', // Or 'commonjs2', 'var', ...
}
这将导致你可以在浏览器或与支持AMD或CommonJS2(类似的WebPack,Browserify,RequireJS,...)任何模块系统中导入一个包。
有关这两个选项的更多信息,请参见in the Webpack documentation。
奖励:
如果不设置output.library
选项,你的主包的所有出口的财产将用于出口。这仅对不使用AMD或CommonJS的捆绑器/浏览器有效。例如:
entrypoint.js:
module.exports = {
firstExport: 1,
secondExport: 2,
};
随着output.library
设置为MyLibrary
,这将在浏览器中发生:
var MyLibrary = { firstExport: 1, secondExport: 2 };
没有output.library
,它看起来像这样:
var firstExport = 1;
var secondExport = 2;