title: React Navigation - goBack() is automatically invoked for stack navigator screen
body: <p>I have 3 stack navigator screens (Home, Item List, Item Detail -> same order) inside drawer navigator and all three screens are hooked up to redux store with connect() helper.</p>
  
  <p><strong>When I do <code>navigate('ItemDetail')</code> from ItemList, it navigates to the screen and immediately comes back to ItemList screen. I am not sure why.</strong></p>
  
  <p>Following is my navigation structure - </p>
  
  <pre><code>const AppStack = createStackNavigator(
    {
      Home: {
        screen: HomeScreen
      },
      ItemList: {
        screen: ItemListScreen
      },
      ItemDetail: {
        screen: ItemDetailScreen
      }
    },
    {
      initialRouteName: 'Home'
    }
  );
  
  const DrawerNav = createDrawerNavigator(
    {
      DrawerApp: AppStack
    },
    {
      drawerPosition: 'right'
    }
  );
  
  const SwitchStack = createSwitchNavigator(
    {
      Loading: Loading,
      Auth: AuthStack,
      App: DrawerNav
    },
    {
      initialRouteName: 'Loading'
    }
  );
  </code></pre>
  
  <p>This is how my each navigation screen component looks - </p>
  
  <pre><code>export class ProviderListScreen extends Component {
    render() {
      const { navigation } = this.props;
      // ItemList is hooked up to Redux via connect() helper
      return &lt;ItemList navigation={navigation} /&gt;; 
    }
  </code></pre>
  
  <p>On my ItemDetail component, I get the Item data through route params from ItemList screen and I also dispatch an action (To reset some part of the store state) in component did mount. As soon as I do that, previous screen (ItemList) is automatically rendered.</p>
  
  <p>Inside item detail, I make API call to create booking for that item and the booking object is managed by redux. Once I land on the ItemDetail, I reset the booking object for new booking data.</p>
  
  <p>Here is the snippet of ItemDetail's componentDidMount - </p>
  
  <pre><code>componentDidMount() {
      this.props.resetItembooking();
    }
  </code></pre>
  
  <p>I am not sure what is causing this behaviour. If I remove the ItemList screen and jump directly to ItemDetail screen from HomeScreen, this issue does not occur.</p>
  
  <p>Any help is appreciated.</p>