Polymer - cloneNode 包括 __data
Polymer - cloneNode including __data
我正在使用库 dragula 来做一些拖放操作。
Dragula 在内部使用 cloneNode(true)
创建被拖动元素的副本,该副本将附加到主体以在拖动时显示预览图像。
不幸的是,如果拖动聚合物元素,则不会克隆绑定的数据。因此,被拖动元素的内容(例如 <div>[[someString]]</div>
)为空。
有解决办法吗?
我其实不需要为我的元素绑定数据,它只是一个"read-only"元素显示一些初始化后不会改变的数据。有没有办法以某种方式 "resolve" html 的字符串不再被绑定?
已经谢谢你了!
自己找到了解决办法。您必须覆盖聚合物 class:
中的 cloneNode
方法
cloneNode(deep) {
let cloned = super.cloneNode(deep);
for (let prop in MyClass.properties) {
cloned[prop] = this[prop];
}
return cloned;
}
我正在使用库 dragula 来做一些拖放操作。
Dragula 在内部使用 cloneNode(true)
创建被拖动元素的副本,该副本将附加到主体以在拖动时显示预览图像。
不幸的是,如果拖动聚合物元素,则不会克隆绑定的数据。因此,被拖动元素的内容(例如 <div>[[someString]]</div>
)为空。
有解决办法吗?
我其实不需要为我的元素绑定数据,它只是一个"read-only"元素显示一些初始化后不会改变的数据。有没有办法以某种方式 "resolve" html 的字符串不再被绑定?
已经谢谢你了!
自己找到了解决办法。您必须覆盖聚合物 class:
中的cloneNode
方法
cloneNode(deep) {
let cloned = super.cloneNode(deep);
for (let prop in MyClass.properties) {
cloned[prop] = this[prop];
}
return cloned;
}