使用
const path = require('path')
module.exports = {
mode: 'development',
devtool: false,
entry: './src/index.js',
output: {
filename: 'sy_utils.js',
path: path.resolve(__dirname, 'dist'),
libraryTarget: 'umd',
library: 'syUtil',
globalObject: 'this'
}
}
属性
library
输出一个库,为你的入口做导出
output: {
library: {
name: 'MyLibrary',
type:'umd'
// 默认为 undefined,将会导出整个(命名空间)对象
export: 'default',
// 添加注释
auxiliaryComment: {
root: 'Root Comment',
commonjs: 'CommonJS Comment',
commonjs2: 'CommonJS2 Comment',
amd: 'AMD Comment',
},
// 当使用 output.library.type: "umd" 时,将 output.library.umdNamedDefine 设置为 true 将会把 AMD 模块命名为 UMD 构建。否则使用匿名 define。
umdNamedDefine:true
},
},
libraryTarget未来可能放弃
导出的方式
globalObject
当输出为 library 时,尤其是当 libraryTarget 为 ‘umd’时,此选项将决定使用哪个全局对象来挂载 library。为了使 UMD 构建在浏览器和 Node.js 上均可用,应将 output.globalObject 选项设置为 ‘this’。对于类似 web 的目标,默认为 self。