在另一个对象数组中转换对象数组?

K09P

我一直在寻找类似的问题,但我发现的问题都没有真正解决我的问题...

编辑:整个想法是开发一个可重用的下拉组件,我将项目直接通过道具。这些项目必须是具有键(用于字段值)和显示属性(用于值文本)的对象。要进行转换,请使用itemify函数。所有这些代码都存在于包含下拉列表的表单组件中。

问题是这样的:

我有从服务器获取的对象数组。目标是保留此对象数组(“旧对象”),并创建另一个对象(“ newObjects”)。此新数组应包含从第一个数组转换而来的新对象,但其中:

newObject.key = oldObject.someProperty
newObject.display=oldObject.someOtherProperty

为了进行此转换,我创建了“ itemify”功能。

现在,实际结果。首先,我从服务器获取数据,然后通过转换获取API获得的数组来创建另一个数组。

getProfiles = async () => {
    const result = await fetch(apiConfig.profilesAPI);
    const body = await result.json();

    if (body.data.length>0){            
        let temp = body.data;
        console.log(temp);
        let buffer = body.data.map(x=>itemify(x,"id","desc"));  


        this.setState((state,props)=>({
            profiles: body.data,
            profileItems: buffer
        }));
    }
}

编辑:这是我的全部itemify功能

function itemify(obj,id,display) {
    let retVal = {
        key: obj[id],
        display: obj[display]
    }
    console.log("obj: "+obj);
    console.log("retVal: "+retVal);
    return retVal;
    // return {key:obj[id],display:obj[display]} //prior version had only this line
}

如果我结帐控制台,我有这个:

我的控制台

第一个日志来自第一个代码段

console.log(temp); 

告诉我是否需要更多代码。这部分代码不在github上。

K09P

问题解决了!

正如我所解释的,我试图将DropDown列表呈现到父组件(一种表单)中。最终结果是下拉列表为空。

首先,我意识到我在登录控制台的方式上犯了一个错误。错误的方法:

console.log("object " + object);

正确方法:

console.log("object",object);

我以为转换对象时做错了什么。毕竟,对象和转换都是正确的。

我发现我在管理状态和道具之间遇到了一些困惑。

我正在将从表单发送的道具加载到子组件的状态(下拉列表)中-我现在意识到这可能没有多大意义。

我在哪里使用项目渲染数组

this.state.items.map(x=>renderItems(x))

我换成

this.props.items.map(x=>renderItems(x))

现在就可以了!毕竟,为什么要将其管理到状态...道具就足够了。学习到教训了!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较两个对象数组,然后用另一个替换对象

来自分类Dev

在Ruby中转换对象数组

来自分类Dev

遍历对象数组与另一个对象数组

来自分类Dev

使用jQuery将对象数组转换为另一个对象数组

来自分类Dev

如何将一个对象数组的属性转换为另一个对象数组

来自分类Dev

将一个对象数组转换为另一个具有不同结构的对象数组

来自分类Dev

从另一个数组更新对象数组

来自分类Dev

使用php将数组转换为另一个json对象内部的json对象

来自分类Dev

将通用对象数组转换为另一个通用类的数组

来自分类Dev

RamdaJS 转换对象并使用另一个列表进行查找

来自分类Dev

Javascript:根据另一个对象数组对一个对象数组进行排序

来自分类Dev

如何从另一个对象数组中减去一个对象数组

来自分类Dev

如何根据另一个对象数组的值创建一个对象数组?

来自分类Dev

如何根据另一个对象数组查找一个对象数组?

来自分类Dev

以编程方式基于另一个对象数组创建一个对象数组

来自分类Dev

将对象放入另一个对象数组内部的对象数组

来自分类Dev

将对象放入另一个对象数组内部的对象数组

来自分类Dev

根据另一个对象数组过滤对象数组。删除数组值与另一个对象数组中的数组值匹配的项目

来自分类Dev

从对象数组另一个类调用方法?

来自分类Dev

根据另一个对象数组替换键

来自分类Dev

删除基于另一个对象的数组项

来自分类Dev

如何用另一个对象的数组分割一个对象

来自分类Dev

在另一个Realm对象中存储一个Realm对象数组(Swift)

来自分类Dev

如何基于数组和另一个对象创建一个新对象?

来自分类Dev

将一个对象发送到另一个对象内的数组

来自分类Dev

将对象从一个数组推到另一个数组

来自分类Dev

将对象值从一个对象数组移动到另一个对象数组

来自分类Dev

PHP:使用另一个未排序的对象数组更新对象数组值

来自分类Dev

将正确的对象数组与vb.net中的另一个对象数组链接

Related 相关文章

  1. 1

    比较两个对象数组,然后用另一个替换对象

  2. 2

    在Ruby中转换对象数组

  3. 3

    遍历对象数组与另一个对象数组

  4. 4

    使用jQuery将对象数组转换为另一个对象数组

  5. 5

    如何将一个对象数组的属性转换为另一个对象数组

  6. 6

    将一个对象数组转换为另一个具有不同结构的对象数组

  7. 7

    从另一个数组更新对象数组

  8. 8

    使用php将数组转换为另一个json对象内部的json对象

  9. 9

    将通用对象数组转换为另一个通用类的数组

  10. 10

    RamdaJS 转换对象并使用另一个列表进行查找

  11. 11

    Javascript:根据另一个对象数组对一个对象数组进行排序

  12. 12

    如何从另一个对象数组中减去一个对象数组

  13. 13

    如何根据另一个对象数组的值创建一个对象数组?

  14. 14

    如何根据另一个对象数组查找一个对象数组?

  15. 15

    以编程方式基于另一个对象数组创建一个对象数组

  16. 16

    将对象放入另一个对象数组内部的对象数组

  17. 17

    将对象放入另一个对象数组内部的对象数组

  18. 18

    根据另一个对象数组过滤对象数组。删除数组值与另一个对象数组中的数组值匹配的项目

  19. 19

    从对象数组另一个类调用方法?

  20. 20

    根据另一个对象数组替换键

  21. 21

    删除基于另一个对象的数组项

  22. 22

    如何用另一个对象的数组分割一个对象

  23. 23

    在另一个Realm对象中存储一个Realm对象数组(Swift)

  24. 24

    如何基于数组和另一个对象创建一个新对象?

  25. 25

    将一个对象发送到另一个对象内的数组

  26. 26

    将对象从一个数组推到另一个数组

  27. 27

    将对象值从一个对象数组移动到另一个对象数组

  28. 28

    PHP:使用另一个未排序的对象数组更新对象数组值

  29. 29

    将正确的对象数组与vb.net中的另一个对象数组链接

热门标签

归档