title: Execute code before createStackNavigator()
body: <p>Case is to change language,function setlanguage retrieves language code from asyncstorage and sets that language, this execution is running simultaneously with other initializations like createStackNavigator, createDrawerNavigator, So the changed language strings are not applied to navigation components like drawer, How can I execute the set language before createStackNavigator? So language strings are present beforehand.</p>
  
  <p>I have tried manually changing navigation option of components in componentDidMount of home component, But that did'nt work.</p>
  
  <pre><code>  const lang = await AsyncStorage.getItem('selectedLangCode');
  
    if (lang == null) {
      try {
        await AsyncStorage.setItem('selectedLangCode', 'en');
      } catch (e) {
        console.log('not able to store language');
      }
    }
    if (lang) {
      await strings.setLanguage(lang);
    }
  </code></pre>
  
  <p>And in App.js navigation code is there for</p>
  
  <pre><code>  createDrawerNavigator(...components...))
  </code></pre>
  
  <p>I have imported languageSetup function before app.js import in root file(index.js)
  still the execution is synchronous so while languageSetup is running createDrawerNavigator loads the components in drawer.
  So in drawer the language translations doesn't apply</p>