Jony Jony - 22 days ago 5
React JSX Question

What will happen if I use setState() function in constructor of a Class in ReactJS or React Native?

Out of curiosity, I just wanna know what will happen if I use

setState()
function in constructor of a Class in React Native or ReactJS?
Such as:

constructor(props) {
super(props);
this.setState({title: 'new title'});
}


what's the lifecycle of React gonna happen?




I haven't read the code inside React. I am afraid it will some any damage when I write it that way.

Answer

What setState essentially does is to run a bunch of logic you probably don't need in the constructor.

When you go state = {foo : "bar") you simply assign something to the javascript object state, like you would any other object. (That's all state is by the way, just a regular object local to every component).

When you go setState(), then apart from assigning to the object state react also rerenders the component and all it's children. Which you don't need in the constructor, since the component hasn't been rendered anyway.