组合框React Widgets上的动态defaultValue

Dynamic defaultValue on Combobox React Widgets

本文关键字:动态 defaultValue Widgets React 组合      更新时间:2023-09-26

我对javascript还很陌生,目前我正在制作一个显示数据库中某些数据的web客户端。我想是很标准的东西。我使用react.js并安装了react小部件来获得一些不错的小部件。我使用的comboxbox是根据从另一个comboxbox中选择的集合从mongo数据库中获取数据。因此,通过更改集合,内部的数据会更新以反映更改。这很有效,但我似乎无法设置默认值。这里是呈现组合框的代码:

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

我遇到过一些小部件的问题,它们似乎无法动态更新。如果我第一次渲染时所有数据都在那里(例如静态数据),它们就会工作,但如果数据一开始是空的,然后被填充,它们就不会工作*我确实确保调用setState来调用render函数。

我错过什么了吗?这是我不理解的javascript问题吗?

谢谢!

尝试用条件包装组合框。

像这样的

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

我认为您最好使用value道具,而不是defaultValue,它将使您对组件有更多的控制权,并且当状态发生变化时,它将重新填充表单元素。