ionic4 @ ionic / angular ionChange或ion-select在表单重置时无法正常工作

时间:2019-11-14 08:07:59

标签: angular ionic-framework ionic4

当前行为: 我认为这是以前使用角度的问题,但是使用emitEvent:false选项对其进行了角度修复,现在该选项不适用于离子型。 我有一个反应式表单,即使我使用{emitEvent:false}选项也要用reset重置表单时,它会发出一个事件,并运行ionChange,如果选项embedEvent:false,它会运行不正确的行为。

预期的行为: 如果选项emitEvent:false,则ionChange不能运行。

这是我的.html文件中的内容

foreach ($_SESSION['results'] as $row)

这就是我的.ts文件中的内容

 <ion-select slot="end" (ionChange)="onProvinceChanged($event)" formControlName="provinceCtrl" [interfaceOptions]="customPopoverOptions" interface="popover" placeholder="{{'province' | translate}}">
<ion-select-option *ngFor="let city of cities" [value]="city.id"> {{city.name | translate}} </ion-select-option> 
 </ion-select>

我当前的版本

onClearFilter(){ this.form.controls['provinceCtrl'].reset('',{emitEvent: false}); }

1 个答案:

答案 0 :(得分:0)

正如我在评论中提到的,ionChange不在乎如何设置或重置值,它不以任何方式附加到角度形式,它只是侦听值何时更改并相应地起作用,因此{ {1}}在这种情况下不起作用,因为它仅影响形式。

因此,由于它仅影响表单,因此请删除emitEvent: false并改为收听该formcontrol的ionChange,因为将valueChanges设置为{时不会触发valueChanges {1}}:

emitEvent

还请记住在组件被破坏时退订!