我做了一个小小提琴来显示这个问题:http://jsfiddle.net/4TpnG/582/ 当你有一个附加了 onBlur 的输入框,并且来自 state 的初始值时,来自键盘的输入被阻止。附加 onChange 后,它可以正常工作。为什么会发生这种情况,如何解决?我原以为它会接受您键入的字符并更新 onBlur 状态。
在 Reactjs JSX 中使用带有 onBlur 的输入字段和来自状态块输入的值?
IT技术
reactjs
react-jsx
2021-05-13 05:25:21
1个回答
该value
属性将输入的值与该状态联系起来,如果用户更改了该值,则状态和输入值不再相互关联。所以 React 阻止了这种情况的发生。
您可能想改用该defaultValue
属性。
如果要使用该value
属性,则需要将onChange
其与组件状态同步。这是因为组件可以随时重新渲染,并且如果该值与将渲染旧值的状态不同步。