使用 Webpack library 和 libraryTarget 配置通过全局变量设置我们的自定义库
Use Webpack library and libraryTarget configuration to set our custom library via global var
我有一个库 "xyz",目前正在通过 npm 注册表将其作为节点模块导入。
现在,我想将它添加为库并通过全局名称公开它 "abc"。
我想用 webpack configuration 来实现。
所以,我知道这是我需要添加到我的 webpack 配置中的配置?:
"output": {
"path": SHELL_PATH + filePath.dist,
"libraryTarget": "var",
"library": "abc"
}
但是,我如何 link abc 到我的 xyz 库,以便通过全局名称 "abc" 公开我的 abc 库中的方法?
我还需要做什么?
一个选项可以只是将 xyz
包装在 abc
库中并将 abc
库公开为全局变量。
webpack.config.js
module.exports = {
entry: './index.js',
output: {
libraryTarget: 'var',
library: 'abc',
path: './dist',
filename: 'abc.js'
}
};
index.js
module.exports = {
xyz: require('xyz')
};
如果您想通过 abc.xyz
或
访问 xyz
字段
module.exports = require('xyz');
如果您想直接通过 abc
导出 xyz
字段。
我有一个库 "xyz",目前正在通过 npm 注册表将其作为节点模块导入。
现在,我想将它添加为库并通过全局名称公开它 "abc"。
我想用 webpack configuration 来实现。
所以,我知道这是我需要添加到我的 webpack 配置中的配置?:
"output": {
"path": SHELL_PATH + filePath.dist,
"libraryTarget": "var",
"library": "abc"
}
但是,我如何 link abc 到我的 xyz 库,以便通过全局名称 "abc" 公开我的 abc 库中的方法?
我还需要做什么?
一个选项可以只是将 xyz
包装在 abc
库中并将 abc
库公开为全局变量。
webpack.config.js
module.exports = {
entry: './index.js',
output: {
libraryTarget: 'var',
library: 'abc',
path: './dist',
filename: 'abc.js'
}
};
index.js
module.exports = {
xyz: require('xyz')
};
如果您想通过 abc.xyz
或
xyz
字段
module.exports = require('xyz');
如果您想直接通过 abc
导出 xyz
字段。