angular - Angular中单击事件的管道触发器
问题描述
我创建了一个自定义管道,用于按名为 searchterm 的给定术语过滤数据集。我已将其创建为标记。
<ul>
<li *ngFor="let item of list | searchterm: value">
Say {{item.title}}
</li>
</ul>
“值”来自另一个组件的输入元素。每次我更改输入文本时,它都会立即激活管道。只有在单击另一个组件中的按钮时,我才需要激活管道。
到目前为止,我已经创建了这个:
<button (click)="showResult(searchterm)">Search</button>
在组件中:
showResult(strCat:booblean){
this.strCat = true;
}
现在我坚持走得更远......我该如何管理这个?
解决方案
如果您不想立即应用管道,请不要使用管道。
相反,在单击按钮时执行的函数中过滤列表。
如果您需要在两个组件之间进行通信,请使用此处规定的合适的组件间通信策略:
https://angular.io/guide/component-interaction
我的最爱:https ://angular.io/guide/component-interaction
或者使用ngrx
推荐阅读
- standard-deviation - 连体网络的标准差
- jquery - jQuery 如何在动态加载的选项卡中显示选定的图像(目前仅适用于第一个选项卡)
- azure - Windows 装载 Azure 文件共享,可访问单个共享
- shell - HTML 标记的 AWK 脚本问题
- twitter-bootstrap - 预加载器 gif 仅适用于中等分辨率
- android - 在 android studio 上将实时数据库添加到我的应用程序 - 无法解决:firebase-database-15.0.0
- iphone - 如何向 iPhone 发送 TCP 数据包而不是 ICMP 数据包
- java - Spring Security - HTTP 状态 403 - 禁止 - 服务器理解请求但拒绝授权
- python - 我使用 random.shuffle 错误还是这是一个错误?
- ruby-on-rails - Rails 将多个表导出到 csv