簡體   English   中英

Mat-Dialog 傳遞數組並填充它 Angular

[英]Mat-Dialog Passing Array and Populate It Angular

所以這是我的問題,我將在 QTY 文本字段中輸入一個值。 將彈出 Mat 對話框,顯示我輸入的數量。 你如何在afterclose中迭代一個對象/數據? 並將其填充到setItem? 我得到了結果,但它不會迭代它傳遞給setItem怎么做? 這就是我到目前為止所做的

https://stackblitz.com/edit/mat-dialog-example-2akxdg

更新:我可以獲得數量,但我無法獲得我在 mat-dialog 中輸入的內容

實際上,當mat-dialog關閉時,您並沒有從它發送數據。

alter-dialog.component.ts文件中,您只是在save()上發送 qty

//your method which is not sending the required data
save() {
    this.dialogRef.close(this.data.qty);
  }

你也需要發送你輸入的數據,像這樣

//save method that is returning required data
save() {
    this.dialogRef.close(this.fg.value);
    //fg is your form, it has qty too, so no need to send qty separately
  }

app.component.ts中你需要在 close 之后正確aftercloseresult本身不是一個數組,實際上它是一個 object。 displayArrayresult object 中存在的實際數組。 你需要像這樣迭代

dialogRef.afterClosed().subscribe((result) => {
      console.log('qty' + result.qty);
      for (let i = 0; i < result.displayArray.length; i++) {
        this.setItem.push(this.CreatesetItem(result.displayArray[i].MoreItem));
      }
    });

單擊此處查看帶有您預期答案的 Stackblitz 示例

暫無
暫無

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

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