angular - 当组件嵌套在其他组件中时,为什么角度事件发射器不起作用?
问题描述
在卡片组件 html 中,我有 ng-content,我将卡片项目组件放在卡片组件内。为什么在这种情况下我不能发出值?
示例 1。
card.component.html
<div>
<ng-content>
</div>
<card>
<card-item (closeEmitter)="onClose($event)">
</card-item>
</card>
如果我将 car-item 组件移到卡片组件之外,则事件发射器可以正常工作。
示例 2。
card-item.component.html
<div>
<div class="card-header"> header </div>
<div class="card-body"> content </div>
<div class="card-footer"> footer</div>
</div>
<card></card>
<card-item (closeEmitter)="onClose($event)"></card-item>
有没有办法像第一个例子一样发出价值?
解决方案
您应该在 html 元素或 ng-container 上调用事件发射器。
<ng-container (closeEmitter)="onClose($event)">
<card-item></card-item>
</ng-container>. or on an html element
<div (closeEmitter)="onClose($event)">
<card-item></card-item>
</div>
推荐阅读
- tekton - Tekton 管道 - 显示在仪表板上的秘密
- python - 在对 pandas 数据框的列表进行迭代时使用错误 re.findall()
- excel - Excel 公式,如果 true 使用值,但如果 false 重复直到 true
- amazon-web-services - AWS CloudWatch 解释洞察图——将计费多少读/写 IO?
- javascript - NuxtJS 将上下文、存储、注入和 axios 传递给插件
- mongodb-query - MongoDB - 如何在两级层次结构中获取最后一项
- cmake - 如何将 Paho Mqtt C 和 Cpp 库添加到 CMakeLists.txt
- elasticsearch - Kibana/Elasticsearch 6.8 - delete_by_query 返回原因“被阻止:[FORBIDDEN/8/index write (api)];”
- javascript - 如何解决javascript中的符号迭代器错误?
- c# - 通过 Change Tracker 获取更改属性的名称