作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在Polymer Dart中完成了一个自定义按钮组件:
<div id="buttonDiv">
<my-button id="traceButton"
mode="icon" faicon="fa-comment-o"
toolTip="Print a simple comment"
disabled="false" on-click="{{ traceSomething }}">
</my-button>
</div>
$['buttonDiv'].children
然后将其插入其他地方来移动它的。问题在于
{{ traceSomething }}
现在不相关,因为它不属于新父代。我收到错误消息,说父对象(这是另一个聚合物组件)没有实例 setter/getter “traceSomething”。
最佳答案
我不确定复制/粘贴的意思。您是克隆元素,还是只是将其附加到其他一些子元素。
无论如何,如果以声明方式添加事件侦听器,我认为您无法删除它。如果必须添加它,则很容易删除并稍后阅读。
import 'dart:async';
...
StreamSubscription subsc;
@override
attached() {
super.attached();
subscr = onClick.listen((e) => (this.parentNode as ShadowRoot).host.traceSomething(e));
}
@override
detached() {
super.detached();
if(subscr != null) {
subscr.cancel();
}
}
关于dart - 如何从自定义聚合物组件中删除 “on-click”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33817212/
我是一名优秀的程序员,十分优秀!