从外部url显示json数组中的数据,无api
我在尝试从json中提取特定的数据位时遇到困难。从控制台日志中可以看到,我可以获取任何数字,但无法获取任何属性,如艺术家或图像。我有两个错误,一个是大多数属性上的冒号,第二个是“警告:列表中的每个子项都应该有一个唯一的“键”属性。” 我希望能够返回信息并将其显示在另一个组件上,这样您可以从返回中看到,我有一个变量列表,我需要这些变量来完成我的项目从外部url显示json数组中的数据,无api,json,reactjs,axios,Json,Reactjs,Axios,我在尝试从json中提取特定的数据位时遇到困难。从控制台日志中可以看到,我可以获取任何数字,但无法获取任何属性,如艺术家或图像。我有两个错误,一个是大多数属性上的冒号,第二个是“警告:列表中的每个子项都应该有一个唯一的“键”属性。” 我希望能够返回信息并将其显示在另一个组件上,这样您可以从返回中看到,我有一个变量列表,我需要这些变量来完成我的项目 function Data() { const [Music, setMusic] = useState([], {}); u
function Data() {
const [Music, setMusic] = useState([], {});
useEffect(() => {
axios.get('https://itunes.apple.com/us/rss/topalbums/limit=100/json')
.then((data) => {
setMusic(data.data.feed.entry);
console.log(data.data.feed.entry[20]);
})
.catch((err) => console.log(err));
},[]);
return (
<div>
<h2>Album List</h2>
<ul className="albums">
{Music.map(Music => {
const { id, name, image, label, title, artist } = Music;
return (
<div><li key={id.attributes.id}>
<img src={'/'} alt={"error"} />
<h2>{}</h2>
</li>
</div>
);
})}
</ul>
</div>
)
}
函数数据(){
const[Music,setMusic]=useState([],{});
useffect(()=>{
axios.get()https://itunes.apple.com/us/rss/topalbums/limit=100/json')
。然后((数据)=>{
setMusic(data.data.feed.entry);
log(data.data.feed.entry[20]);
})
.catch((err)=>console.log(err));
},[]);
返回(
专辑列表
{Music.map(Music=>{
const{id,名称,图像,标签,标题,艺术家}=音乐;
返回(
-
{}
);
})}
)
}
您没有使用正确的键值。例如,可以从im:image
访问图像,从im:name
访问名称,从im:price
访问价格
{Music['im:name'].label}
{Music['im:price'].label}
如果它解决了您的问题,请告诉我。非常感谢!它成功了。我还有一个关于上面的问题。如何将数据从这个组件传递到另一个组件?您可以将数据作为道具传递到其他组件。请阅读react文档中关于道具和组件的这一页()。我尝试了不同的方法,但是我一直得到的“项目”没有定义
<li key={id.attributes['im:id']}>
<img src={Music['im:image'][0].label} alt={'error'} />
<h2>{Music['im:name'].label}</h2>
<h2>{Music['im:price'].label}</h2>
</li>