簡體   English   中英

按對象內的值按角度排序數組對象

[英]Angular Sort Array Object by value inside object

如何通過過濾對象內部的鍵值來獲取對象? 我在下面需要僅提取具有session_id:23的數據的對象

數據= [{名稱:“拳頭名稱”,session_id:“ 23”,登錄名:“日期”},{名稱:“第二名稱”,session_id:“ 18”,登錄名:“日期”},{名稱:“第三名名稱”,session_id:“ 23”,登錄名:“日期”}];

I tried Angular Filter and Map method to filter this out but dosent seem to work for me here.
.pipe(
    map((res) => {
        res => res.filter(res => res.season_id == 23)
        console.log(res);
    })
)

ngOnInit() {
    this._service.getData();
    this._service.updatedPlayer
        .pipe(
            map((res) => {
                res => ress.filter(res => res.season_id == 23)
                console.log(res);
            })
        )
        .subscribe(
            (playerSession) => {
                this.playerSessionUpdate = playerSession;
            }
        )

}

我認為您正在將數組與流混淆。

您需要使用Array的filter方法,而不是observables的filter運算符。 因此,如果this._service.updatedPlayer包含您可觀察的數據流,請執行以下操作:

this._service.updatedPlayer.subscribe(data => {
  this.playerSessionUpdate = data.filter(res => res.season_id == 23);
}

this.playerSessionUpdate現在將包含您過濾的數據。

您的管道方法map必須返回某些內容。 所以你應該做

 map((res) => {
          return res.filter(res => res.season_id === 23)
     })

暫無
暫無

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

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