【问题标题】:Getting multiple ids from a son object in react从子对象中获取多个ID
【发布时间】:2026-01-15 16:10:02
【问题描述】:

我正在尝试从 JSON 对象中获取多个 id 并在 useffect 中使用它们。

我不知道如何加入每个 track.id 并用逗号分隔它们以进行 api 调用。

有人知道如何解决这个问题吗?

https://i.stack.imgur.com/FWV1x.png

^^JSON 是什么样子的

useEffect(() => {

        console.log(track)


        fetch('https://api.spotify.com/v1/tracks?ids=' + track.id, {
            headers: { 'Authorization': 'Bearer ' + access_token }
        }).then(response => response.json())

            .then((data) => {
                console.log('Spotify Api Call - Music Page', data)
                const tranformedTracks = data.tracks.map(trackData => {
                    console.log(trackData)
                    return {
                        albumCover: trackData.album.images[0].url,
                        trackName: trackData.name,
                        artistName: trackData.album.artists[0].name,
                    };
                });
                setTopTracks(tranformedTracks);
                setTracksLoaded(true);
            });

    }, []);```

【问题讨论】:

  • tracks.map((track) => track.id).join(',')?
  • 上述答案的替代方案,您可以使用数组减少,(more infodata.tracks.reduce((prev, curr) => prev ? prev + "," + curr.id : curr.id, "")
  • 感谢@dave,我尝试了很长时间,您的解决方案是我第一次尝试并完美运行,谢谢!

标签: javascript reactjs spotify


【解决方案1】:

您可以使用 map 函数获取所有 id 并使用 join 方法用逗号将它们连接起来,您的解决方案是

let ids = trackData.map((track) => track.id).join(",")
console.log(ids) // Output : 1,2,3,4 :)

【讨论】:

    最近更新 更多