聚合物动态生成元素

Polymer create element dynamically

本文关键字:元素 动态 聚合物      更新时间:2023-09-26

我需要动态创建一个自定义元素。

I tried

var newElement= document.createElement('custom-element');

这是工作。但我的问题是,当我想添加属性到这个元素,绑定数组到这个元素。我试着

newElement.setAttribute('data','{{data}}')

但是它说它期望数组并接收到'{{data}}'

如何将此绑定添加到动态元素?

我认为现在不可能,请看from kevinpschaaf:

https://github.com/Polymer/polymer/issues/1778

不,我们目前不支持这个,除了dom-bind,它是只有后期绑定实例子节点的模板实现。你可以文档。createElement('template', 'dom-bind'),然后你就可以将带有绑定注释的子节点动态附加到其内容上,绑定只有在绑定了dom-bind后才会被计算到文档。请参阅此处显示其用法的测试:https://github.com/Polymer/polymer/blob/master/test/unit/dom-bind.html L95

注意dom-bind目前不允许绑定到外部作用域,所以它在自定义元素模板中的使用有限(它的主要用例是用于主文档中元素之间的绑定),而不是短期内可能改变。

我们通过烘烤实现了许多性能优化在注册时将连接绑定到原型中元素(而不是在实例时),并且我们还没有建立足够的允许在运行时添加/删除绑定的机制。