私のコメントにはさらに詳しい情報があります。代わりに、この
if (routeId === 'SplashPage') {
return (
<SplashPage
navigator={navigator}/>
);
}
if (routeId === 'LoginPage') {
return (
<LoginPage
navigator={navigator}/>
);
}
の
はちょうどあなたが動的にコンポーネントを取得するために使用するハッシュテーブルを持っています。
const Component = VIEW_COMPONENTS[routeid];
ので、あなたのコードは、ルックアップテーブルへの単一のラインエントリとなり、この
const VIEW_COMPONENTS = {
'SplashPage': SplashPage,
'LoginPage': LoginPage
};
renderScene = (route, navigator) => {
const ViewComponent = VIEW_COMPONENTS[route.id];
return <ViewComponent navigator={navigator}/>
}
任意の追加の画面のようになります。私は40スクリーンのネイティブアプリを持っており、このような管理が非常に簡単です
これに追加するには、あなたはこれをさらに抽象化することができます。どのビューを使用するのか、またはその次のビューを気にしないようにする。代わりにそのすべてをルックアップオブジェクトの一部にします。すべてのビューが表示できる次のルートを指定します。すべての追加情報を渡すことができ、そのすべては設定可能で、画面は複数のフローで再利用できます!
あなたはそのようにレンダリングする必要はありません... tbh thats shitty answer。ルックアップテーブルを使って動的にレンダリングすることができます。 –