2017-06-15 10 views
0

私はRact Nativeで新しく、反応ネイティブナビゲーションを使用して小さなアプリケーションを構築しようとしています。componentWillMount in Reactネイティブナビゲーション

自分のサイトで提供されているムービーアプリの例(ネイティブナビゲーションに対応)では、app.jsのcomponentWillMount関数を使用していないが、代わりにコンストラクタでstartApp()関数が呼び出されています。

基本的にfirewire構成をcomponentWillMounth関数で定義しようとしていますが、単純なコンソールログでは、何らかの形で機能が実行されないことがわかります。

私は最高のパフォーマンスのためにアプリケーションを正しく設定したいので、startApp関数を使用するのが基本的に同じで、componentWillMount関数を使用する必要はないと思いますか?

更新:あなたはありませんので、コードが

index.ios.js

import App from './src/app'; const app = new App();

app.js

import ... 

class App extends Component { 
    state = { 
     loggedIn: null 
    } 

    constructor(props) { 
    super(props); 
    this.startApp(); 
    } 

    componentWillMount() { 
    console.log('COMPONENT WILL MOUNT'); 
    // Initialize Firebase 
    const config = { 
     ... 
     ... 
    }; 
    firebase.initializeApp(config); 
    } 


    startApp() { 
    console.log('START APP'); 

    // Initialize Firebase here??? 




const tabs = [ 
    ... 
]; 

    if (this.state.loggedIn) { 
    Navigation.startTabBasedApp({ 
     tabs, 
     tabsStyle: { 
     ... 
     } 
    }); 
    } else { 
    Navigation.startSingleScreenApp({ 
     ... 
    }); 
    } 
    } // startApp 
} 
export default App; 
+1

正確な問題を把握するのは難しいです。また、あなたは 'componentWillMounth'と書いています。同じタイプミスがコード内にないことを確認してください。そうであれば、それが呼び出されていない理由です。 – martinarroyo

+0

こんにちは@martinarroyo、今はあまり進んでいませんが、私はfirebase設定を初期化するのに最適な場所を見つけることを試みています。 とにかく、わかりやすくするために単純化されたコードを追加しました。 – gianni

答えて

0

下記のおcomponentWillMountが実行されていませんReactレンダリングライフサイクル内でコンポーネントを使用する(renderではなく、newでインスタンス化していますが、これはコンポーネントのコンストラクタのみを実行します。次のようにインデックスレンダリングメソッドに移動します。

class EntryPoint extends React.Component { 
    render(){ 
    <App /> 
    } 
} 

AppRegistry.registerComponent('MyApp',()=>EntryPoint); 
+0

ありがとう@martinarroyo。残念ながら、この解決法は機能しません。エラーは返されませんが、画面に何も表示されません。私はまた欠けているreturn()部分を追加しましたが、運はありません。私が現在使用している解決策が完全に間違っているのか、それが「それを行う別の方法」なのか疑問に思っていますか? – gianni

+0

あなたのコードに多少の間違いがあるかもしれません。完全なJSファイルを投稿すれば、それを見つけ出すかもしれません。 – martinarroyo

関連する問題