聚合物-包含__data

时间:2019-02-05 14:41:33

标签: polymer clonenode

我正在使用库dragula来进行一些拖放操作。

Dragula内部使用cloneNode(true)创建一个被拖动元素的副本,该元素将附加到主体上以在拖动时显示预览图像。

不幸的是,如果拖动一个聚合物元素,绑定的数据不会被克隆。因此,被拖动元素(例如<div>[[someString]]</div>)的内容为空。

有解决方案吗?

实际上,我不需要为元素绑定数据,它只是一个“只读”元素,它显示一些在初始化后不会更改的数据。有没有办法以某种方式将字符串“解析”到html而不被绑定?

谢谢你!

1 个答案:

答案 0 :(得分:0)

我自己找到了解决方案。您必须在聚合物类中覆盖cloneNode方法:

cloneNode(deep) {
  let cloned = super.cloneNode(deep);
  for (let prop in MyClass.properties) {
    cloned[prop] = this[prop];
  }
  return cloned;
}