Javascript 如何命名SystemJS捆绑包的名称空间

Javascript 如何命名SystemJS捆绑包的名称空间,javascript,namespaces,ecmascript-6,systemjs,Javascript,Namespaces,Ecmascript 6,Systemjs,我正在使用SystemJS builder构建一个捆绑包,我想将其包含在另一个项目中。我遇到的问题是,捆绑包A和捆绑包B可能都包含一个“主”模块,当我捆绑它们并将它们包含在另一个项目中时,它们会发生冲突,所有东西都会断开 SystemJS builder是否有更好的命名空间方法?还是阻止捆绑模块被导出?或者我应该使用另一种工具吗?SystemJS没有一种简单的方法来完成您想要的任务 您可以按路径而不是按名称导入模块 import x1 from "folder1/x.js" import x2

我正在使用SystemJS builder构建一个捆绑包,我想将其包含在另一个项目中。我遇到的问题是,捆绑包A和捆绑包B可能都包含一个“主”模块,当我捆绑它们并将它们包含在另一个项目中时,它们会发生冲突,所有东西都会断开


SystemJS builder是否有更好的命名空间方法?还是阻止捆绑模块被导出?或者我应该使用另一种工具吗?

SystemJS没有一种简单的方法来完成您想要的任务

您可以按路径而不是按名称导入模块

import x1 from "folder1/x.js"
import x2 from "folder2/x.js"
您还可以尝试创建两个SystemJS实例


您还可以重命名模块。

我认为这是一个线索,说明存在设计问题。在我看来,不是“应用程序捆绑包”的捆绑包不应该有主模块,应用程序捆绑包也不应该彼此共同加载。main就是一个例子,它可能有其他名称冲突。难道
a/main
b/main
不应该是不同的模块吗?除非您使用的是全局模块标识符,否则这应该不是问题。它们是单独开发的。模块a是一个项目,模块b是一个项目,它们被构建并包含在父应用程序中。因此,当我使用system js构建并包含它们时,modulea.build.js和moduleb.build.js都有类似于
system.register(“main”)