从反应中的儿子对象获取多个ID
Getting multiple ids from a son object in react
我正在尝试从一个 JSON 对象中获取多个 ID 并在 useeffect 中使用它们。
我不知道如何用逗号分隔每个 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);
});
}, []);```
您可以使用 map 函数获取所有 ID,并使用 join 方法以逗号连接它们,您的解决方案是
let ids = trackData.map((track) => track.id).join(",")
console.log(ids) // Output : 1,2,3,4 :)
我正在尝试从一个 JSON 对象中获取多个 ID 并在 useeffect 中使用它们。
我不知道如何用逗号分隔每个 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);
});
}, []);```
您可以使用 map 函数获取所有 ID,并使用 join 方法以逗号连接它们,您的解决方案是
let ids = trackData.map((track) => track.id).join(",")
console.log(ids) // Output : 1,2,3,4 :)