【问题标题】:React convert props Objects into array then setStateReact 将 props 对象转换为数组然后 setState
【发布时间】:2017-08-07 04:52:51
【问题描述】:

我需要转换这个道具:

进入这个数组:

this.setState({
            locations: [
                { label: 'California', value: 'california' },
                { label: 'Nevada', value: 'nevada' },
            ]
});

最初我使用这个plugin 并想用我的道具替换它的默认值但无法转换它。

【问题讨论】:

标签: javascript reactjs


【解决方案1】:

取决于你的 JavaScript 风格和写作偏好

利用for .. in 运算符,它有缺点。 它将遍历 所有 可枚举属性,甚至是原型中的属性。

var arr = [];
for (var key in myObject) {
  arr.push(myObject[key]);
}

或使用Object.keys 方法

var arr2 = Object.keys(myObject).map(function (i) {
  return myObject[i];
});

或者最后,如果您正在运行 Babel 转译应用程序,Object.values

var arr3 = Object.values(myObject);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    • 1970-01-01
    • 1970-01-01
    • 2021-06-12
    • 2017-05-20
    • 2021-01-27
    相关资源
    最近更新 更多