晚上好!
我有一个带有多个包的monorepo,其中每个包都是使用Webpack独立绑定的。
在它成为monorepo之前,我只有一个捆绑包文件,并且可以通过浏览器中的全局变量通过output.library
属性获得它。现在我有了以下内容,因为我有多个条目:
output: {
library: "SC",
// export itself to UMD format
libraryTarget: "umd",
umdNamedDefine: true,
filename: "[name]/dist/organization-[name].js",
// fix for https://github.com/webpack/webpack/issues/6525
globalObject: `(typeof self !== 'undefined' ? self : this)`
}
问题是,如果我对每个包都使用相同的配置,并使用脚本标记将多个配置导入到浏览器中,则实际上只有最新的脚本可用,因为它实际上每次都会重新创建全局变量。
有没有办法重用它?或者是我可以在这里使用的更好的约定。例如,在node中,我使用包名称导入它们中的每一个,但在浏览器中,我觉得它们应该都在同一个全局变量下。
感谢您的任何建议!
发布于 2019-03-15 08:00:36
正如我在webpack的repository上创建的问题中所提到的,解决方案是使用以下内容:library: ["MyLibrary", "[name]"]
这将使所有包在相同的全局变量MyLibrary
下可用,但由它们各自的条目(即MyLibrary.entryOne
和MyLibrary.entryTwo
)分隔。
https://stackoverflow.com/questions/55035197
复制相似问题