you can use getDerivedStateFromProps and pass an empty parameter while you navigate, that triggers the method once after the navigation.

  // caller 
     this.props.navigation.navigate('SOMEWHERE', {})

  static getDerivedStateFromProps(nextProps, prevState){
    return null


You could set a variable in localStorage when you first load your page. Then, whenever you render, you simply get and test that variable:

   async componentDidMount() {
      if(localStorage.getItem('reRender') !== "true") {
          //Processing to do only for the very first render 
          localStorage.setItem('reRender', "true");

You could reset the variable depending on your use case afterwards (for example when logging out):



componentWillMount() gets called pre-render and only once until the page refreshes.

componentDidMount() gets called immediately after render() and the DOM is available at this time. This will happen only the first time it's loaded until the page refreshes.

Related Query

More Query from same tag