react 检查输入框非初次渲染,检查是否有默认值,写在哪个生命周期

场景描述

1.我有一个新闻列表,新闻列表有编辑按钮
2.点击编辑按钮会有一个弹出框,里面有默认值,但是有一些输入框是空的
3.点击编辑弹出框里面的输入框是一个单独的组件。

问题描述

因为弹出框里面的输入框是一个单独的组件,所以我改完一个新闻还会点击另外一个新闻的编辑,所以想问问我应该在哪个生命周期里,检查每次点击弹出框里面的输入框是否有默认值并且做出相应的反应。

阅读 2.3k
3 个回答

componentWillMount

componentDidMount

既然有输入框,那么输入框的值应该是弹框的一个状态,每次只有一个弹框的话,弹框只需要保持一个实例。所以在 componentWillRecevieProps里接收传入的数据,并根据数据设置状态的值:

componentWillRecevieProps (nextProps) {
  this.setState({news: nextProps.news})
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题