node.js - 将 id 从 json 响应映射到 key 并将其用于 FlatList React-native

标签 node.js key react-native-flatlist

我有一个来自 api 响应的 json,如下所示:

centres = [{
    id: 1,
    name: "DEF",
    },{
    id: 2,
    name: "ABC",
  }]

现在我想将上述数据填充到 FlatList 中

return(
  <View>
    <FlatList
      data={this.state.centres}
      renderItem={({item}) => <CentreComponent centre={item}/>}
    />
  </View>
);

但我无法执行上述操作,因为数据(中心)没有“关键”属性。

现在我可以循环遍历数组中的每个项目并添加一个与 ID 具有相同值的属性“key”。但我发现这很有效。

是否有更好的方法将“id”列映射到“key”以呈现 FlatList

最佳答案

我能看到这种情况发生的最快方法是迭代数组。

const centres = [{
    id: 1,
    name: "DEF",
  },{
    id: 2,
    name: "ABC",
}];

const newCentres = centres.map( ( item ) => ({ key: item.id, name: item.name }) );

console.log( JSON.stringify( newCentres ) )
// [{"key":1,"name":""},{"key":2,"name":""}]

关于node.js - 将 id 从 json 响应映射到 key 并将其用于 FlatList React-native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45029222/

相关文章:

javascript - 尽管使用 extraData,但删除最后一项后无法重新渲染 FlatList - React Native

node.js - Grunt 安装错误 : "should be installed with -g"

arrays - 如何通过另一个 json 值对 json 中的键进行排序

javascript - 如何从具有多个对象的平面列表中设置和获取不同的状态和输入

XSLT 2.0 Xpath 错误 "not a node item"

python - 替换字典中所有字典中的冗余键名称

javascript - Flatlist 不会在状态更改时重新渲染

node.js - 如何在使用 Node 缓存时创建可重用的缓存方法

javascript - 硬关闭窗口时未触发 Socket.IO 套接字断开连接事件

javascript - 为什么 Node Circle to Polygon 模块返回卵形/椭圆形而不是圆形之类的形状?