如何 return JSX 中的映射数组?
How to return a mapped array in JSX?
我已经将一些虚拟数据(1000 object 部电影)导入到我的 React.js 组件中,我想渲染标题。
export const dummyData = [
{
id: 'tt0111161',
rank: '1',
title: 'The Shawshank Redemption',
}
我已经用整个 object 创建了一个数组,我想放映前 3 部电影。
const likedFilms = [];
for (let i = 0; i < 3; i++) {
likedFilms.push(dummyData);
}
我遇到的问题是渲染标题。
我试过用这个。没有。不确定如何访问此数据...
return (
<div>
{likedFilms.map((likedFilm) => <p>TITLE: {likedFilms.title} </p>)}
</div> )
or TITLE: {this.likedFilms.title}
映射确实有效,因为它向我显示:
标题:
标题:
标题:
但它没有呈现标题。
编辑您的 return,您正在访问 likedFilmS 而不是 likedFilm,在示例中我已将名称更改为 film
{likedFilms.map(film => <p>TITLE: {film.title} </p>)}
{likedFilms.map((likedFilm) => <p>TITLE: {likedFilm.title} </p>)}
likedFilmed
是数组的名称,而 likedFilm
是迭代时数组中每个项目的名称。所以在地图的 return 中,您想要访问单个项目的 属性 likedFilm.title
而不是 likedFilms
我还建议给 p
元素一个键来摆脱 React 的控制台警告;所以假设电影片名是唯一的,它将变成
{likedFilms.map((likedFilm) => <p key={likedFilm.title}>TITLE: {likedFilm.title} </p>)}
我已经将一些虚拟数据(1000 object 部电影)导入到我的 React.js 组件中,我想渲染标题。
export const dummyData = [
{
id: 'tt0111161',
rank: '1',
title: 'The Shawshank Redemption',
}
我已经用整个 object 创建了一个数组,我想放映前 3 部电影。
const likedFilms = [];
for (let i = 0; i < 3; i++) {
likedFilms.push(dummyData);
}
我遇到的问题是渲染标题。
我试过用这个。没有。不确定如何访问此数据...
return (
<div>
{likedFilms.map((likedFilm) => <p>TITLE: {likedFilms.title} </p>)}
</div> )
or TITLE: {this.likedFilms.title}
映射确实有效,因为它向我显示: 标题: 标题: 标题:
但它没有呈现标题。
编辑您的 return,您正在访问 likedFilmS 而不是 likedFilm,在示例中我已将名称更改为 film
{likedFilms.map(film => <p>TITLE: {film.title} </p>)}
{likedFilms.map((likedFilm) => <p>TITLE: {likedFilm.title} </p>)}
likedFilmed
是数组的名称,而 likedFilm
是迭代时数组中每个项目的名称。所以在地图的 return 中,您想要访问单个项目的 属性 likedFilm.title
而不是 likedFilms
我还建议给 p
元素一个键来摆脱 React 的控制台警告;所以假设电影片名是唯一的,它将变成
{likedFilms.map((likedFilm) => <p key={likedFilm.title}>TITLE: {likedFilm.title} </p>)}