我的地图函数渲染不正确有问题。
内容上的项目是一个数组(见下文)。并且“内容”由其父级传递,其中包含从地图到 switch 语句的片段(此处未显示,因为我认为这不是问题,但可以在需要时粘贴)。问题图中列表项的显示顺序是产品、关于、联系我们、产品。因此,Home 被首先跳过并替换为最后一项“产品”。如果需要更多信息,请告诉我,谢谢。
const PageListItem = (props) => <Link to={props.item.id}>{props.item.value}</Link>;
const PageList = (props) => {
return (
<div style={styles.list}>
{ props.content.items.map( item => <PageListItem key={item._id} item={item} /> ) }
</div>
);
};
export default Relay.createContainer(Radium(PageList), {
fragments: {
content: () => Relay.QL`
fragment on Content {
items {
_id
id
value
}
}
`,
}
});
被映射的数据的内容数组(来自猫鼬)
{
"_id" : ObjectId("920005cd1a38532d14349240"),
"items" : [
{
"_id" : ObjectId("57102a0ad9601e34489223c1"),
"value" : "Home",
"id" : "110005cd1a38532d14349240",
},
{
"_id" : ObjectId("57102a0ad9601e34489223c0"),
"value" : "About",
"id" : "120005cd1a38532d14349240",
},
{
"_id" : ObjectId("57102a0ad9601e34489223bf"),
"value" : "Contact Us",
"id" : "130005cd1a38532d14349240",
},
{
"_id" : ObjectId("57102a0ad9601e34489223be"),
"value" : "Products",
"id" : "110005cd1a38532d14349240",
}
],