我正在处理一个相当大的表单。我有我自己的组件,在那里我获取数据,然后将数据传递给表单组件。问题是:
- 是否使用包含数据对象的ref更好?
- 还是可以使用
useState
表单中的这些数据可以被用户随时修改。
es:
const data={
name:"",
bio:"",
location:""
.....
.....
}
更合适:
const ref = useRef(data) or const[user,setUser]=useState(data)
我不应该避免更多的渲染和使用ref吗?当我进入编辑模式时,是否会导致任何原因?
useState和useRef的主要区别在于:
如果你更新状态,你的组件将重新呈现如果你更新了ref中存储的值,dom中不会发生任何变化。如果你不需要组件重新渲染useRef可能是一个不错的选择。
在您的情况下,当您使用ref从数据对象更改任何键时,dom中没有任何更改。
如果你只存储时间的值,useRef是更好的选择。