我正在使用primeNG v7.0.3,我想禁用多选组件中的某些选项。
但是,我做了文档中提到的所有操作,但仍然可以选择。
[options]="roleOptions"
并初始化为:roleOptions: SelectItem[];
,然后使用ngOnInit
调用的函数填充。
如果需要更多说明,请告诉我。
如何在p-multiselect组件中有条件地禁用某些选项?
@编辑:
到目前为止我尝试过的是: This issue here on stack overflow
ngOnInit() {
this.translateInit().then(() => {
this.setStatusOptions();
this.setUserRoles();
});
this.setEditing();
}
private setUserRoles() {
this.roleOptions = [
{ label: this.messages['GLOBAL.USER.ROLE.CLINIC_USER'], value: this.roleEnum.CLINICUSER, disabled: true },
{ label: this.messages['GLOBAL.USER.ROLE.AGENT_USER'], value: this.roleEnum.AGENTUSER },
{ label: this.messages['GLOBAL.USER.ROLE.ADMIN_USER'], value: this.roleEnum.ADMINUSER },
{ label: this.messages['GLOBAL.USER.ROLE.CLINIC_REVIEWER'], value: this.roleEnum.CLINICREVIEWER }
];
}
@ Edit2 / SOLUTION /:
在模板中,您需要删除optionLabel =“ label”才能使用此方法,因为它已被禁用。但是我认为文档中应该提到这一点。
有趣的事实!您不需要上述解决方案即可工作,只需从模板中删除optionLabel即可。