簡體   English   中英

角度更改EventEmitter之后的值

[英]Angular change the value after EventEmitter

我有一個具有某種切換功能的組件。

  <label *ngIf="value" (click)="toogleLuckBet()">On</label>
  <label *ngIf="!value" (click)="toogleLuckBet()">Off</label>

export class GameStarComponent {
  @Input() value: boolean;
  @Input() disabled: boolean;
  @Output() valueChange = new EventEmitter<boolean>();

  constructor() {
    this.value = false;
    this.disabled = false;
  }

  toogleLuckBet() {
    this.value = !this.value;
    this.valueChange.emit(this.value);
  }

}

這個組件正在foreach內部使用,我想做的是基於其他字段的某些條件允許值更改或不更改。 所以我的想法是在調用該組件時要有一個valueChanged

<game-star [(value)]="game.isLuckBet" (valueChange)="changeLuckBet()"></game-star>

並在父組件上實現函數changeLuckBet,該函數將檢查場景,並在必要時將game.isLuckBet屬性的值更改為false。

發生的事情是,即使我看到調試時該屬性發生了更改,但在所有屬性都處於真實狀態之后,好像我從未在父組件上進行更改一樣。

我想念什么?

您是否可以嘗試通過更改來使用屬性綁定而不是雙向綁定

[(value)]="game.isLuckBet" 

To

[value]="game.isLuckBet" 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM