在 primeng 版本 7.0.5 中加载数据时,多选 onChange 事件不起作用

Multiselect onChange event not working when load data in primeng version 7.0.5

我想在多选内的数据发生更改(选中)时做一些事情,但是当我尝试通过单击按钮将所选项目加载到多选时,'onChange' 事件不起作用。我不明白为什么。请在 stackblitz

上查看

如果您尝试完全加载新的可能选项,而不仅仅是通过单击按钮自动 select 选项,那么您必须使用新的更新初始 options 数组SelectItems,像这样:https://stackblitz.com/edit/angular-multiselect-primeng-apqng7?file=src/app/hello.component.ts

load() {
    this.options = [
      { label: 'Geometry', value: 'Geometry' },
      { label: 'Physics', value: 'Physics' },
      { label: 'Chemistry', value: 'Chemistry' },
    ];
}

否则,如果您在单击加载时尝试 select 选项,则需要将 loadOptions 数组设置为包含现有值(不是新的),像这样:

load() {
    this.loadOptions = ['Aerospace'];
}

如果您尝试更新所有可能的选项 select 其中的一个或多个,您也可以将它们结合起来。

此外,onChange 方法有效。我想你可能期望它在错误的时间触发。 onChangeselection 值更改时触发,而不是在 options 更改时触发。如果您 select/deselect 组件中的值,您可以看到您的控制台日志正在按预期打印。