我有使用Polymer构建的元素,需要在多个站点(小部件)上运行,其中:
不含聚合物(很好,我可以包括)
聚合物已包含在兼容版本中(非常棒,不太可能)
未知版本的聚合物(太旧或太新, tricky )
是否可以在命名空间中加载Polymer?例如 myObj.Polymer 或 MyPolymerName
myObj.Polymer
MyPolymerName
我发现聚合物-js可以让我加载聚合物作为模块,但这不是官方方式 . 这仍然出口到全球范围
现在的解决方案是依靠包管理将Polymer解析为项目及其依赖项的单个兼容版本,并使用HTML Imports来重复从多个源加载依赖项 .
如果您将元素作为Bower软件包销售,那么网站可以包含它们,包括它们的依赖项和Polymer的导入,如果可以使用兼容的Polymer版本,则在整个项目中使用该版本 .
在未来的Polymer版本中,在ES6模块和加载器完全规范之后,我们可能会有一个只通过模块导出的Polymer版本,这样多个版本可以限定为显式导入,并且可以安全地共存于页面上 .
1 回答
现在的解决方案是依靠包管理将Polymer解析为项目及其依赖项的单个兼容版本,并使用HTML Imports来重复从多个源加载依赖项 .
如果您将元素作为Bower软件包销售,那么网站可以包含它们,包括它们的依赖项和Polymer的导入,如果可以使用兼容的Polymer版本,则在整个项目中使用该版本 .
在未来的Polymer版本中,在ES6模块和加载器完全规范之后,我们可能会有一个只通过模块导出的Polymer版本,这样多个版本可以限定为显式导入,并且可以安全地共存于页面上 .