使用值更改侦听器克隆Polymer元素

时间:2016-11-11 11:25:25

标签: dom polymer listener clone

是否可以在Polymer中克隆元素,以便侦听器仍在侦听值更改?

假设我想在#copyDiv中复制这两个元素,这两个元素相互激发真正的值变化。

HTML

 <div id="copyDiv">
      <project-picker id="projectPicker" project="{{projectObject}}" on-value-changed="projectChanged"></project-picker>
      <deliverable-picker projectId="{{projectId}}"></deliverable-picker>
 </div>

projectChanged listener:

projectChanged: function(newD, oldD) {
            [...some functionality]

            this.projectId = this.$.projectPicker.project.projectCode;
        },

更改projectId后,将触发deliverable-picker以执行某些功能。这是应该的。但是,当我尝试复制这两个元素时,从克隆元素中挑选项目时不会调用projectChanged

更新

您可以在下面找到我正在尝试复制的模块的屏幕截图。选择项目时,将填充可交付项列表。用户单击项目后,可交付项将添加到右侧的摘要中。当我点击“添加另一个项目”按钮时,必须复制整个元素(红色边框)并在下面追加。 enter image description here

克隆dom节点的代码:

addAnotherProject: function() {
            var newProject = this.$.projectdelivcombi.cloneNode(true);
            for (var i in this.$.projectdelivcombi.properties) {
                newProject[i] = this.$.projectdelivcombi[i];
            }
            this.$.projectdelivcombiContainer.append(newProject);
        },

有没有办法让这项工作?

0 个答案:

没有答案