我最近,在做 WebEvo 网站中的 微博短视频解析工具 的时候,需要将获取到的urls渲染到页面中,而微博接口返回的urls为一个对象。如下:
{
"1080P 高清": "//example.com/****",
"720P 高清": "//example.com/****"
}
思考之后发现有以下几种方式:
遍历对象的键
export default function App() {
const urls = {
'1080p': "1080",
'720p': "720",
};
return (
<div>
{Object.keys(urls).map((key, index) => (
<div key={index}>
{key}: {urls[key]}
</div>
))}
</div>
)
}
遍历对象的值
如果只需要渲染对象的值,你可以使用此方法直接访问它们。 Object.values()
export default function App() {
const urls = {
'1080p': "1080",
'720p': "720",
};
return (
<div>
{Object.values(urls).map((value, index) => (
<div key={index}>
{value}
</div>
))}
</div>
)
}
遍历对象的键值对数组
如果需要渲染对象的键和值的话,你可以使用该方法返回一个包含键值对子数组的数组。 Object.entries()
export default function App() {
const urls = {
'1080p': "1080",
'720p': "720",
};
return (
<div>
{Object.entries(urls).map(([key, value]) => (
<div key={key}>
{value}
</div>
))}
</div>
)
}