这是我的数据(在单独的JS文件中):
const someData= [
{
id: 1,
title: "Article 1",
desc: "Some description lorem ipsum",
},
{
id: 2,
title: "Article 2",
desc: "Some description lorem ipsum",
},
{
id: 3,
title: "Article 3",
desc: "Some description lorem ipsum",
}
]
export default someData;
现在我正在像这样映射数据:
- Articles.js file
const articleItems = this.state.someData.map(item =>
<ArticleItem key={item.id} item={item}
/>)
return(
<div>{articleItems}</div>
)
列出所有文章,并仅在ArticleItem组件中显示文章标题。
- articleItem.js file
return(
<h1>{props.item.title}</h1>
)
如何创建,以便您可以单击列表中的文章标题,然后转到该特定文章(网址应为/ article / id)并显示该特定文章的所有数据?
答案 0 :(得分:0)
使用React Routers第4版来实现这一目标。
Article.js文件-
const articleItems = this.state.someData.map(item =>
<Route key={item.id} path=`/${item.title}/${item.id}` render={
<ArticleItem
{...props}
item={item}
/>
} />
/>)
return(
<div>{articleItems}</div>
)
在您要渲染的文件中,链接呈现如下。
render() {
return(
<Link to=`/${item.title}/${item.id}`>{item.title}</Link>
);
}
不要忘记导入“路线和链接”。 希望这会有所帮助。