我希望我的受控输入在框中没有任何值的情况下进行初始化。输入是一个数字,所以我不会传入一个空的''
. 使用 defaultProps,我用 null 初始化输入。
在输入中输入时,控制台会报告此消息:
<MyInput>
正在更改要控制的类型编号的不受控制的输入。输入元素不应从不受控制切换到受控制(反之亦然)。
为了防止这种情况,我通常用一个空字符串进行初始化,以防止这种“切换”发生。但是对于一个数字(我不想显示 0,我不想显示任何内容)我不知道该怎么做。
static defaultProps = {
estimatedHours: null,
estimatedMinutes: null,
}
默认值^^
<input
type="number"
onChange={(e) => this.handleChange('Hours', e.target.value)}
onKeyDown={this.handleKeyDown}
onPaste={this.handlePaste}
value={estimatedHours}
placeholder={hoursText}
className="slds-input th-trailmix-textbox th-time-component__input"
/>