【发布时间】:2020-01-02 15:19:27
【问题描述】:
我在一个虚拟组件中有一个简单的ion-select:
<ion-select
[value]="objectConfig!.soundType"
interface="popover"
(ionChange)="newSoundType.emit($event)"
>
<ng-container *ngFor="let soundType of SoundTypesArray">
<ion-select-option [value]="soundType" id="soundType-{soundType}">
{{ soundType }}
</ion-select-option>
</ng-container>
</ion-select>
/// model:
@Input() objectConfig: ObjectConfig
它只有一项工作。告诉我用户何时选择了另一个SoundType(soundTypeA、soundTypeB 和soundTypeC,其中soundTypeC 要求用户执行更多步骤或只是取消)。
我现在遇到的问题是,当用户选择soundTypeC 并取消<ion-select> 框时,即使objectConfig 仍然保持soundTypeA作为soundType 值。
我知道我可以从我的父组件重新发送input(),但我试图防止重绘。是否可以防止ion-select 改变自己的价值并尊重这一点 -> [value]="objectConfig!.soundType" ?
编辑:
澄清一下:objectConfig 持有 正确 值。我需要ion-select 来反映objectConfig.soundType 所说的内容。
将盒子里的香蕉 ([()]) 与 value 或 ngModel 一起使用无效。
Edit2 Stackblitz: https://stackblitz.com/edit/ionic-select-problem?file=pages%2Fhome%2Fhome.ts
Edit3 Stackblitz:
使用carlosGlegaspi answer 离子选择的外部显示值是正确的,但内部ion-select 仍然保持更改后的值
【问题讨论】:
-
不能用ngModel代替value属性吗?
-
@Chellappanவ 不,行为完全相同。
标签: angular ionic-framework ionic4