Webpack:用于非模块代码的全局变量

时间:2017-07-21 11:00:03

标签: typescript webpack umd

我正在尝试使用Typescript UMD模块(当不存在require()时不会回退到全局变量),而遗留代码不是任何模块模式。

我希望Webpack有一个加载器或插件可以为特定模块创建全局变量(而不是将它们作为模块加载)。

例如,我在Node包中有Typescript UMD模块:

node_modules/my-new-module

导出功能

myNewFunction(){ }

我希望在我的遗留代码中使用它:

myNewModule.myNewFunction(); //myNewModule is a global variable

目前我最好的解决方案是加载我的所有共享模块并手动将它们分配给全局变量。当然这不太理想。

Webpack可以这样做吗?还有其他解决方案吗?

由于

1 个答案:

答案 0 :(得分:1)

使用Webpack,您可以将模块公开为库(将生成全局变量):

  

如果设置了library且libraryTarget不是,则libraryTarget默认为   输出配置文档中指定的var。看到   output.libraryTarget那里有一个可用的详细列表   选项。

看看这里:https://webpack.js.org/guides/author-libraries/#add-librarytarget