使用 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 字段。