使用getDerivedStateFromProps导致的问题

#1

场景:父组件在componentDidMount钩子获取个人信息后, render将信息传递给子组件,子组件使用了getDerivedStateFromProps来更新值,并展示到子组件的input,

问题:这个时候导致input不能更改值了,因为input的change更改state后,会再次触发getDerivedStateFromProps,getDerivedStateFromProps会把父组件的值再次赋值给input。

请问这个我怎么才能修改input 。。。。。

#2

getDerivedStateFromProps的时候判断一下啊

Q: 什么时候要覆盖子组件的state?
A: 假设子组件state没有值的时候

  • 子组件state没有值,getDerivedStateFromProps返回 响应回来的 value
  • 子组件state有值,getDerivedStateFromProps返回null,不更新子组件的state