You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在mat-select中新增选项并将其设置为选中值?

实现方案

你可以按照以下步骤操作即可实现需求:

  • 第一步:在组件ts文件中构造符合列表项结构的新增选项对象,要和ListOfSelect中原有元素的字段保持一致(你的代码里用到了code作为绑定值、description作为展示文本,所以新增对象也要包含这两个字段)
  • 第二步:把新增的选项对象追加到ListOfSelect数组中,推荐使用扩展运算符生成新数组触发Angular变更检测,避免直接push后列表不刷新的问题
  • 第三步:给绑定的表单控件myList赋值为新增选项的code属性值,mat-select会自动匹配到对应选项设为选中状态

代码示例

// 假设你当前的表单组定义为myForm
const newOption = {
  code: 'new_opt_001', // 自定义新增选项的编码值
  description: '我是新增的选项' // 自定义下拉列表展示的文本
}

// 追加到源数组,生成新数组触发变更检测
this.ListOfSelect = [...this.ListOfSelect, newOption]

// 设置表单控件值为新增选项的code,自动匹配选中
this.myForm.get('myList')?.setValue(newOption.code)

注意:你已引入ngx-mat-select-search和自定义过滤管道,不需要额外修改搜索逻辑,新增的选项会自动被纳入过滤范围

内容的提问来源于stack exchange,提问作者Samuel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:15:06