【问题标题】:Extend MatOption to create select/deselect all component扩展 MatOption 以创建选择/取消选择所有组件
【发布时间】:2020-12-15 05:03:54
【问题描述】:

我需要创建一个共享组件选择/取消选择mat-select 的所有元素,因为我有一个应用程序经常使用它并实现经常做同样的工作不是一种选择。

我一直在阅读许多选项,例如 question,我决定创建一个组件作为答案之一(查看 https://stackblitz.com/edit/angular-select-all-option

问题在于,对于 angular v10,它似乎不起作用。如果我单击“全选”按钮,它不起作用,但是如果我单击某些选项,然后单击“全选”,它可以工作,但不能按预期工作。代码在这里:

https://stackblitz.com/edit/select-all-option

项目之间的主要区别是Ivy compiler。没有常春藤,它可以工作。

是否可以使用Ivy compiler 实现此目的?提前致谢

【问题讨论】:

    标签: angular angular-material angular-ivy


    【解决方案1】:

    这与 Ivy 如何处理监听器继承有关。 _selectViaInteraction 已在 MatOption 组件中调用,因为它还包含 click 主机侦听器。

    尝试在第 23 行的 select-all-option.component.ts 中删除 this._selectViaInteraction();

    https://stackblitz.com/edit/select-all-option-dmcb4h?file=src/app/select-all-option/select-all-option.component.ts

    【讨论】:

      猜你喜欢
      • 2020-03-26
      • 2018-05-18
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 2011-10-09
      • 2015-02-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多