【发布时间】:2020-01-24 03:40:48
【问题描述】:
我正在尝试获取下拉输入字段的默认值,因为我将它用于添加和更新。下面是我的代码
<BrInput
type="select"
name="altPayableInd"
id="altPayableInd"
options={altPayableIndOpt}
default={payableResp.payable[index] && payableResp.payable[index].altPayableInd.value && this.setDefaultValue(payableResp.payable[index] && payableResp.payable[index].altPayableInd.value, altPayableIndOpt)}
/>
setDefaultValue = (value, options) => {
let matchedLabel = options.find(el => el.value === value);
if (value !== "O") {
this.setState({ viewReason: false })
}
return [{ value, label: matchedLabel.label }]
}
错误:
在现有状态转换期间无法更新(例如在
render内)。渲染方法应该是 props 和 state 的纯函数。
【问题讨论】:
-
错误是不言自明的。好像您在更新组件状态的渲染方法中调用 setDefaultValue 。尝试提供默认的“值”并将“onChange”处理程序添加到您的下拉列表中。
标签: javascript reactjs ecmascript-6 jsx