¿Por qué no es necesario difundir el estado actual (... este estado) cuando manejo el cambio de entrada en el componente React Class? En estado actual tengo otros objetos
handleInputChange = (newValue: string) => { this.setState({ ...this.state, *<--- this string* value: newValue, }); };Consulte la documentación de React :
Las actualizaciones de estado se fusionan
Cuando llamas a
setState(), React fusiona el objeto que proporcionas en el estado actual.Por ejemplo, su estado puede contener varias variables independientes:
constructor(props) { super(props); this.state = { posts: [], comments: [] }; }Luego puede actualizarlos de forma independiente con llamadas setState() separadas:
componentDidMount() { fetchPosts().then(response => { this.setState({ posts: response.posts }); }); fetchComments().then(response => { this.setState({ comments: response.comments }); }); }La fusión es superficial, por lo que
this.setState({comments})deja intactothis.state.posts, pero reemplaza completamentethis.state.comments.