所以我是聚合物的新手,决定看一下聚合物2.0。我找到了Polymer CLI,并决定创建一些自定义元素。我已经设法让它们在页面上呈现,但我希望能够更好地理解在同一页面上拥有多个元素的最佳实践。
现在我的当前项目结构如下所示。
index.html - used to display the elements
elements
->first-element
-> bower_components
-> demo -> index.html
-> test -> first-element_test.html
-> bower.json
-> first-element.html
-> index.html
-> polymer.json
->second-element
-> bower_components
-> demo -> index.html
-> test -> second-element_test.html
-> bower.json
-> second-element.html
-> index.html
-> polymer.json
我有一个index.html模板文件,用于导入要显示的两个元素。
inside index.html file:
<link rel="import" href="elements/first-element/first-element.html"/>
<link rel="import" href="elements/second-element/second-element.html"/>
<first-element></first-element>
<second-element></second-element>
现在我能够看到它们在前面呈现,但我有一些关于同一页面上多个元素的最佳实践的问题,并且可能没有重复调用。目前,在两个元素html文件中,每个元素都有自己的bower_components
,并且它们都在<link rel="import" href="bower_components/polymer/polymer-element.html">
文件中导入.html
。因此,当我在页面上呈现这两个元素时,您可以看到与polymer-element.html
相关联的所有文件的重复请求。
我的问题是,有更清洁的方法吗?或者这是聚合物如何在同一页面上处理多个元素?
答案 0 :(得分:1)
当您定义元素并开始构建应用程序时,polymer-cli将分析您的源并在构建捆绑包时对导入进行重复数据删除。然后,您将在一个地方找到包含所有依赖项的单个文件。
另外值得一提的是,您应该有一个bower_components
目录,对同一资源的后续导入不应再次触发请求。
我有这样的结构:
-- bower_components
-- node_modules
-- src
-- elem1
...
-- elemN
其中elem1会像那样导入<link rel="import" href="../../bower_components/polymer/polymer.html">
。