我正在使用Polymer v3开发Web组件,并且需要在我的新组件的模板HTML中包含在旧版Polymer 2组件中定义的一些自定义元素。
由于Polymer 3不再支持HTML导入,我应该采用什么方法来包含它们?如果我使用的是Polymer 2,我可以在组件的HTML文件中添加以下内容:
<link rel="import" href="../my-legacy-component.html">
我已尝试将上述链接添加到我的组件的模板HTML中,但似乎无效。我还尝试了各种import
命令来直接引用遗留组件中的JS文件,但收到了各种难以理解的JS错误,所以我不确定这是否也是正确的方法。
我无法相信没有一种简单的方法可以做到这一点 - Polymer团队是否真的会引入与使用旧版本创建的所有组件完全不兼容的库的新版本?
答案 0 :(得分:3)
您是否尝试使用聚合物增塑剂? Modulizer执行许多不同的升级任务,例如:
答案 1 :(得分:1)
我之前遇到过与模块js-yaml
相同的问题。我还没有足够的声誉发表评论,所以我只是在这里写下来。
sudo npm install -g js-yaml
- &gt;这将安装该工具的缺失包modulizer --import-style name --out .
- &gt;这会将您的组件从Polymer 2转换为Polymer 3.选项--import-style name
告诉工具使用包名而不是路径。 --out
将使该工具将这些文件写入目录。polymer serve --module-resolution=node
- &gt;提供服务由于我们现在使用节点模块,因此我们必须提供--module-resolution=node
选项。