reactjs - 输入defaultValue已设置但未显示

时间:2018-02-26 14:55:14

标签: reactjs input react-redux

注意到defaultValue为输入设置了一些奇怪之处,但有时在刷新页面时它不可见。我已经尝试过console.log,然后组件在数据加载时重新渲染多次,在最后一次重新渲染时,组件包含所需的值,正如您在屏幕截图中看到的那样,但它没有显示。知道为什么吗?谢谢

<input type="text" name={this.props.question.id}
                defaultValue={defaultValue}
                onChange={this.onSingleChange.bind({
                    selectAnswer: this.props.selectAnswer,
                    question: this.props.question,
                    form: this.props.fid
                })}
                className="form-control"
            />

enter image description here

1 个答案:

答案 0 :(得分:4)

之前我遇到过同样的问题。我的解决方案是在我的输入中添加key道具,这是一个随机数。

key={`${Math.floor((Math.random() * 1000))}-min`}

根据我的阅读,这与defaultValue仅在初始渲染时设置有关。随机数会导致使用正确的默认值重新渲染。

希望有所帮助。