در جاوااسکریپت، دادهها اغلب بهصورت آرایهای از آبجکتها هستند. در React نیز برای نمایش این دادهها، از متد map() استفاده میکنیم تا هر آیتم به یک عنصر JSX تبدیل شود.
const list = [
{
title: 'React',
url: 'https://react.dev/',
author: 'Jordan Walke',
num_comments: 3,
points: 4,
objectID: 0,
},
{
title: 'Redux',
url: 'https://redux.js.org/',
author: 'Dan Abramov, Andrew Clark',
num_comments: 2,
points: 5,
objectID: 1,
},
];function App() {
return (
{list.map(function (item) {
return - {item.title}
;
})}
);
}در اینجا، هر آیتم از لیست به یک عنصر <li> تبدیل شده است.
React برای بهینهسازی رندر مجدد لیستها، نیاز به ویژگی key دارد. این ویژگی باید مقدار یکتایی مانند objectID باشد:
{list.map(function (item) {
return {item.title} ;
})}در صورت نبود شناسه یکتا، میتوان از index استفاده کرد، اما فقط بهعنوان آخرین راهحل.
میتوان اطلاعات بیشتری از هر آیتم را نمایش داد، مانند لینک، نویسنده، تعداد نظرات و امتیاز:
{list.map(function (item) {
return (
{item.title}
{item.author}
{item.num_comments}
{item.points}
);
})}href میتوانند بهصورت داینامیک از دادهها مقدار بگیرند.{/* comment */} استفاده میشود.استفاده از map() برای رندر لیستها در React یکی از قدرتمندترین قابلیتهای JSX است. با استفاده از آن میتوان دادههای پویا را بهسادگی به عناصر HTML تبدیل کرد و رابطهای کاربری تعاملی ساخت. ویژگی key نیز برای بهینهسازی عملکرد و جلوگیری از خطاهای رندر ضروری است.