Reactjs @setState具有动态键值
Reactjs @setState with a dynamic key value
我在 props 中有一个动态对象,我想在状态中发送它
@setState
key: val
values:
another_key: value
@props.data.option: @props.data.value
但是这种方式不起作用,我找到了这个解决方案:
newState = {}
newState[@props.data.option] = @props.data.value
this.setState(newState);
但这种方式设定了权利在状态中的价值
这里的问题是您正在处理状态中的嵌套对象,并且当您似乎只想更新values
对象中的键子集时,整个对象values
被替换。 最好的方法是通过set
操作使用 React 的不可变性助手。(https://facebook.github.io/react/docs/update.html)。
使用 ES6,您可以设置动态键:
var update = require('react-addons-update');
var newState = update(this.state, {
values: {[dynamic_key]: {$set: dynamic_value}}
});
this.setState(newState);
相关文章:
- 如何通过动态键读取值,形成json
- 将动态键值对传递给函数
- 动态插入并从数组中检索键值对 - Javascript
- Javascript:访问嵌入在动态键中的动态键的值
- Reactjs @setState具有动态键值
- 将动态键值添加到 JSON 对象
- 在动态 JavaScript 对象(键/值对)中创建动态数组
- Javascript-为循环中的动态键添加多个动态值
- 有没有一种方法可以在express.js中的url路由中执行动态键/值参数
- 基于动态数据获取对象键值
- 将动态键、值对添加到JavaScript数组或哈希表中
- Jquery-从动态表单提交中创建键值对
- 如何使用Angular$location通过动态更改其键值params来设置我的新url位置
- 当键/值是动态的时,将JSON值转换为数字
- 在Javascript中动态访问键值对
- 迭代javascript对象并动态添加对象属性(JS对象中的键值对)
- 如何添加两个键值,并在json中动态显示另一个键值使用javascript
- 如何动态框架Json对象与动态键和值字符串
- 使用jquery动态访问JSON键值
- 动态键值数组与多个值在Javascript