使用api信息并将其等于数组

时间:2018-10-14 12:42:45

标签: reactjs ecmascript-6

我有一个从api中获取的json,并将其作为props传递给子组件,我想使用json中的数据并遍历api,然后将数据设置为这样的数组:

    var myArray = [
{name : name-1, value: value-1}
{name : name-2, value: value-2}
              .
              .
              .
]

我的api是这样的:

[
{name : name-1, value:value-1, id:id-1, ... }
                     .
                     .
                     .
]

我知道是否要返回jsx我必须使用'map',但是这种情况呢?

谢谢

1 个答案:

答案 0 :(得分:1)

您还可以在此处使用Array.prototype.map功能:

 var dataFromAPI = [
  {name : 'name-1', value: 'value-1', id: 1},
  {name : 'name-2', value: 'value-2', id: 2},
  {name : 'name-3', value: 'value-3', id: 3},
];

var myArray = dataFromAPI.map(function (data) {
  return {
    name: data.name,
    value: data.value
  };
});

console.log(myArray);

或使用ES6语法:

const dataFromAPI = [
  {name : 'name-1', value: 'value-1', id: 1},
  {name : 'name-2', value: 'value-2', id: 2},
  {name : 'name-3', value: 'value-3', id: 3},
];

const myArray = dataFromAPI.map(({name, value}) => ({ name, value }));

console.log(myArray);