polymer-2.x - 在 Polymer 2.0 中触发从父元素到子元素的事件
问题描述
有人可以提供一个在 Polymer 2.o 自定义元素中从父级向子级发送事件的示例吗?
我尝试了以下操作:
<child-element>
this.addEventListener('dbinit', this._evdbInitStatus);
和
<parent-element>
this.dispatchEvent(new CustomEvent('dbinit', {detail: {kicked: true}}));
回调不会被调用。
解决方案
这与 Polymer 本身并没有真正的关系,正如您在有关事件如何工作的文档中看到的那样,事件捕获在触发事件的元素处停止,并且事件冒泡(顾名思义,事件冒泡)从元素并在树中上升。
因此,换句话说,由父元素触发的事件不会被子元素捕获。您将需要使用数据绑定来传递数据。
为了保持一致的、可预测的数据流,一般来说,数据通过数据绑定向下传输并通过事件向上传输会更好。
推荐阅读
- jetty - 将 DeploymentManager 绑定到嵌入式 Jetty 服务器
- linux - Gnuplot:关于我的直方图 X 轴和添加百分比的 2 个问题
- keras - 提供 POS 标签作为 RNN 的输入以及词嵌入
- delphi - 如何使用 tFDMemTable 将多个数据表保存到一个文件中
- regex - 棘轮会影响嵌套结构和“节俭的限定词”吗?
- excel - 我的编码存在溢出错误
- groovy - 如何在unetstack中发送和接收基带信号?
- node.js - 我在我的 NestJS 应用程序(使用 authGuard)中使用了 passport-jwt 身份验证策略,如何访问我的控制器中的令牌有效负载?
- magento-1.9 - 无法登录从 1.9.3 升级到 1.9.4.1 的新创建的客户
- java - 如何从关闭挂钩中以非零退出代码退出?