Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在React中从JSON创建动态表头?_Javascript_Json_Reactjs - Fatal编程技术网

Javascript 如何在React中从JSON创建动态表头?

Javascript 如何在React中从JSON创建动态表头?,javascript,json,reactjs,Javascript,Json,Reactjs,我有一个JSON对象数组,我想在React中基于它创建一个动态表列/标题 数据: example = [ { id: 0, city: 'New York', }, { id: 1, city: 'Paris', }, ] 我想遍历数组,获取密钥并添加额外的字段。 到目前为止,我已经: columns() { return Object.keys(Example[0]).map((key) => { return {

我有一个JSON对象数组,我想在React中基于它创建一个动态表列/标题

数据:

example = [
  {
    id: 0,
    city: 'New York',
  },
  {
    id: 1,
    city: 'Paris',
  },
]
我想遍历数组,获取密钥并添加额外的字段。 到目前为止,我已经:

columns() {
    return Object.keys(Example[0]).map((key) => {
      return {
        cityName: key,
        capital: false,
      };
    });
  }
我得到了关键点,但它们是无序随机的,额外的字段被添加到所有对象中。我想让每个键都用作表头列名,并且能够为每个对象更改大写字母。
我怎样才能在反应中做到这一点

您可以使用Array.map进行此操作

example = [
  {
    id: 0,
    city: 'New York',
  },
  {
    id: 1,
    city: 'Paris',
  },
];
example.map((obj) => {
  return {
   CITY : obj.city,
   ID : obj.id
   // Do whatever with the objects
 }
})

确保数组中的所有项都具有相同的返回字段的键,例如“New York”,我想获取键;城市我想把这个键用作表头。如果你想得到这个键,现在在映射内的对象上运行一个循环。i、 每个物体上都有钥匙,你可以很容易地拿到钥匙。你是说地图里面有一张新地图?我不确定这是不是最好的方法,或者它是否有效。不,object.keys…循环通过objexample.mapobj=>{forvar k in obj{console.logk//do some with the keys};}您确定示例[0]吗。mapkey。。。一定是小e?不,这是我写问题时的一个错误,在代码中是正确的。
arr => arr && arr[0] ? object.keys(arr[0]) : [];