Html 寻找一种方法来分配一个三元值,但没有其他条件
我的html元素中有下面的语句。有没有办法只分配第一部分而不分配空部分。因此,基本上,如果条件为true,则将值设置为“”,否则不执行任何操作Html 寻找一种方法来分配一个三元值,但没有其他条件,html,angular,typescript,Html,Angular,Typescript,我的html元素中有下面的语句。有没有办法只分配第一部分而不分配空部分。因此,基本上,如果条件为true,则将值设置为“”,否则不执行任何操作 [value]="ceModal.industryId !== 'Item185' ? '' : null" 我试过了 [value]="ceModal.industryId !== 'Item185' ?? ''" 但这是一个错误 这是整个输入标记 关于: 我认为industryOther的值将保持原样,如果ceModal.industryI
[value]="ceModal.industryId !== 'Item185' ? '' : null"
我试过了
[value]="ceModal.industryId !== 'Item185' ?? ''"
但这是一个错误
这是整个输入标记
关于:
我认为industryOther
的值将保持原样,如果ceModal.industryId!='项目185'
。这就是你想要的吗?如果使用[(ngModel)]
,请不要使用[值]
,这不是逻辑(*),在[ngModel]
和(ngModelChange)
中拆分[(ngModel)]
(*)您对Angular说,该值是[ngModel]的一个变量,而要显示的值是[value]的另一个变量。是否“否则不执行任何操作”表示“不执行赋值”?是的。如果值为'Item185',则不做任何操作,保留该值(无论它是什么)。这里的value
是什么?它是输入属性吗?我刚刚用完整的元素标记更新了我的帖子。将else部分设置为null时,它在UI中可以正常工作,但不会在背面(.ts文件)中设置值。您尝试过未定义吗?我还想知道:你为什么同时设定价值和模型?ngModel不“控制”value属性吗?在第一次尝试时,它似乎在UI中进行了正确的更改,但它不会更改ceModal.industryOther的值。因此,如果我有一个值,说“test”,然后更改该值,有效地将该值设置为“”,然后保存。在my.ts文件中,该值没有更改。因此,如果我刷新页面,“测试”仍然可见。当你说“在我的.ts文件中,值没有更改”时,你的意思是ceModal。industryOther
根本没有更改为传递给[value]
的内容?这意味着,当industryId为“Item185”时,我看到UI变为空白。好!!但是,当我保存表单时,我在.ts文件中放置了一个断点,在该断点处获取包含所有表单值的ceModal,并将其设置为另一个模型值。我想看看industryOther的值是否已更改为“”,并且还没有。。。我已经有一段时间没有使用模板驱动的指令了,但这很有意义。看起来,数据绑定是在value
结算后执行的,因此覆盖它。基本上,它不能用于已经有ngModel
的控件。这是一个非常简单的示例
<input [ngModel]="ceModal.industryOther"
(ngModelChange)="ceModal.industryOther=$event==''?null:$event">