角度6 [formControl] valueChanges

时间:2018-09-04 08:30:40

标签: angular onchange form-control

当我更改表单中的值时,我想要[formControl] =“ toppings”的值。我仅在手动更改时才获得值。我想在初始化时使用val,当我使用fonction selectal()和deselectall时。

html

<div class=col-lg-6 col-md-6 col-sm-12>
<mat-form-field  appearance="outline" style="width:100%" >
  <mat-label>Rechercher un soin de support</mat-label>
  <mat-select placeholder="Toppings" [formControl]="toppings" multiple >
    <button 
              mat-raised-button 
              class="mat-primary fill text-sm" 
              (click)="selectAll()">
              Tout sélectionner
            </button>&nbsp;&nbsp;
            <button 
              mat-raised-button 
              class="mat-warn fill text-sm" 
              (click)="deselectAll()">
              Tout désélectionner
            </button>
    <mat-option *ngFor="let topping of toppingList" [value]="topping" >{{topping}}</mat-option>
  </mat-select>
</mat-form-field>
</div>
  

TS

topping: string;
toppings = new FormControl( ['Soins palliatifs'] );
toppingList: string[] = 
[
'Evaluation de la douleur',
'Evaluation psychologique',
'Evaluation nutritionnelle',
'Evaluation sociale',
'Evaluation physique',
"Conseil d'hygiène de vie",
'Sexualité et fertilité',
'Soins palliatifs',
'Oncogériatrie'
];

 selectAll() {this.toppings = new FormControl( 
 [
'Evaluation de la douleur',
'Evaluation psychologique',
'Evaluation nutritionnelle',
'Evaluation sociale',
'Evaluation physique',
"Conseil d'hygiène de vie",
'Sexualité et fertilité',
'Soins palliatifs',
'Oncogériatrie'
] );  }

  deselectAll() { this.toppings = new FormControl( [''] );
  }

ngOnInit() {
this.toppings.valueChanges.subscribe(val=>console.log(val));
}

我只有通过手动更改才能获得价值。我想在初始化时使用val,当我使用fonction selectal()和deselectall时。

0 个答案:

没有答案