Combobox React Widgets上的动态defaultValue

时间:2015-03-03 13:49:16

标签: javascript reactjs

我对javascript很新,我目前正在创建一个显示数据库数据的Web客户端。我猜是很标准的东西。我使用react.js并安装了react-widgets以获得一些不错的小部件。我使用的comboxbox是从mongo数据库获取数据,具体取决于从另一个comboxbox中选择的集合。因此,通过更改集合,更新内部数据以反映更改。这很好用,但我似乎无法设置默认值。这里是渲染comboxbox的代码:

<Combobox onChange= {this.handleOnChange} data = {this.state.myValues} defaultValue= {this.state.myValues[0]}/>

我遇到过这个问题,其中有几个小部件似乎无法动态更新。如果我第一次渲染所有数据(例如静态数据),它们就可以工作,但如果数据最初是空的并且之后填充,则它们不会。 *我确实调用了setState来调用render函数。

我错过了什么吗?这是一个我不明白的JavaScript问题吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

我认为使用value道具而不是defaultValue可能会更好,它会让您更好地控制组件,并且在状态发生变化时会重新填充表单元素。

答案 1 :(得分:0)

尝试用条件包装组合框。

类似这样的东西

{ this.state.myValues[0] &&
  YOUR_TAG_COMBO
<Combobox onChange= {this.handleOnChange} data = {this.state.myValues} defaultValue= {this.state.myValues[0]}/>

}