簡體   English   中英

如何將對象數組從一個組件傳遞到另一個組件?

[英]How can I pass an object array from one component to another?

我已經嘗試了我在互聯網上看到的所有方法,但這是不可能的。 當我在另一個組件上編寫控制台日志時,它說它是未定義的。

(順便說一句,它是一個對象數組)

這是來自第一個組件:

  irAlCarrito():void{
let params = {queryParams: this.carrito};
this.router.navigate(['/carrito', params]);

}

這是來自第二個組件:

  ngOnInit(): void {
this.router.queryParamMap.subscribe(params => this.carrito = params.getAll("carrito"));
console.log(this.carrito[0]);

}

這里有三個錯誤

首先您必須發送字符串,而不是數組或對象,我們將其JSON.stringify

第二,您必須為您的值添加一個鍵,而不是直接傳遞它

第三,您的 queryParams 應該作為第二個參數發送以導航而不是作為路由數組中的第二項

這是完整的工作代碼

let params = {queryParams: {carrito: JSON.stringify(this.carrito)}};
this.router.navigate(['/carrito'], params);

暫無
暫無

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

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