Angular 在“角度8”中选择后,禁用Mat表格内的Mat Select选项

Angular 在“角度8”中选择后,禁用Mat表格内的Mat Select选项,angular,angular-material,Angular,Angular Material,只需要了解如何禁用Mat Select选项,一旦它从Mat表中的其他行中被选中。 计费参考和说明 {{billingRegisterOutstandingBalance.sequenceNo+'|'+billingRegisterOutstandingBalance.description1} 如果我理解正确,您可以从账单登记簿OutstandingBalances中选择一个值列表,如果其中一个值已被选择,您希望从其他值中禁用它选择 我想到的一个简单方法是向列表的对象添加一个布尔属性(se

只需要了解如何禁用Mat Select选项,一旦它从Mat表中的其他行中被选中。


计费参考和说明
{{billingRegisterOutstandingBalance.sequenceNo+'|'+billingRegisterOutstandingBalance.description1}

如果我理解正确,您可以从
账单登记簿OutstandingBalances
中选择一个值列表,如果其中一个值已被选择,您希望从其他值中禁用它
选择

我想到的一个简单方法是向列表的对象添加一个布尔属性(
selected
)(或者有一个二级布尔列表并使用索引),然后只为
选项添加一个简单条件
disabled属性。像这样的,

<mat-option 
*ngFor="let billingRegisterOutstandingBalance of billingRegisterOutstandingBalances  | sort:'sequenceNo'"
[value]="billingRegisterOutstandingBalance.id"
[disabled]="billingRegisterOutstandingBalance.selected">
  {{ billingRegisterOutstandingBalance.sequenceNo +' | '+ billingRegisterOutstandingBalance.description1}}
</mat-option>

{{billingRegisterOutstandingBalance.sequenceNo+'|'+billingRegisterOutstandingBalance.description1}

您可以添加更多上下文吗?由什么选择?您想禁用一个选项或选择?吗?您好,cabesuon,非常感谢您花时间回答我的问题,我只想禁用选项而不是选择,如果用户已经选择了选项值,则所选项目在其他行中不可用或禁用,这样做的目的是为了避免mat Table中的值重复,只是为了方便参考而添加了一个图像,它仍然需要更多信息。你能在上面建立一个简化的版本吗?这取决于你如何设置打字脚本代码…你说得对,卡贝索,我会试试你的建议。。谢谢谢谢你,这对你有帮助。。如果它解决了您的问题,请将其标记为答案,以供将来参考
<mat-option 
*ngFor="let billingRegisterOutstandingBalance of billingRegisterOutstandingBalances  | sort:'sequenceNo'"
[value]="billingRegisterOutstandingBalance.id"
[disabled]="billingRegisterOutstandingBalance.selected">
  {{ billingRegisterOutstandingBalance.sequenceNo +' | '+ billingRegisterOutstandingBalance.description1}}
</mat-option>