javascript - 如何通过从 json 文件中提取数据来将键值对数组加载到状态中?

标签 javascript reactjs state

我正在使用 npm 组件 React Sortable Tree 来显示我从 .json 文件(data.json)中提取的一些数据:

{
  info: "success",
  data: [
    {
      id: null,
      name: "Arizona",
      type: "REGION"
    },
    {
      id: null,
      name: "Alabama",
      type: "REGION"
    },
    // ...
  ]
}

可排序树组件需要一个处于状态的treeData数组,其组成如下:

treeData: [
  {title: 'Arizona'},
  {title: 'Alabama'},
  // ...
]

但我不想对这些值进行硬编码,而是想从 .json 文件中提取它们。我尝试使用键值对数组,其中键是“title”,值是 data.data[i].name,但我无法将其推送到状态:

setTree () {
  this.setState({
    {for(var i; i < data.data.length; i++){
      var title = "title";
      var name = data.data[i].name;
      var pushVal = {};
      pushVal[title] = name;
      treeData.push(pushVal);
    }}
  }
}

最佳答案

您可以尝试:

const treeData = data.data.map(item => ({ title: item.name }));

关于javascript - 如何通过从 json 文件中提取数据来将键值对数组加载到状态中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51714321/

相关文章:

javascript - 如何使用枚举中的值对数组进行排序?

javascript - 为什么测试显示 'pass' 虽然期望失败了?

javascript - 相邻的 Svelte 商店可以互相更新吗?

flutter - 从子级弹出时,根小部件不会重建

javascript - 在 Node 和 Express 制作的 REST API 上管理分页和搜索/过滤器的正确方法

php - 为什么序列化不包含提交按钮名称?

javascript - Angular.js html5文件上传到grails Controller

javascript - ReactJs - 当特定的 NavLink 处于事件状态时在元素上插入新的 css 类

javascript - 为什么 React Router 不能与 <Switch> 一起工作?

c++ - 在相同状态类型的各种屏幕之间切换?