2016-10-27 4 views
4

私はこのような私のルートを定義している:あなたはFooからBarに移行したときに、デフォルトのコンポーネントによってコンポーネントをアンマウントする代わりにコンポーネントを隠すには?

<Route component={App}> 
    <IndexRoute component={Main}/> 
    <Route path="/foo" component={Foo}/> 
    <Route path="/bar" component={Bar}/> 
    </Route> 

はアンマウントなります。 Foo(Googleマップとカスタムアニメーション)の計算量の多いコードがあるので、このコンポーネントをアンマウントして非表示にしないようにしています。そのため、ユーザーが戻ったときにすぐに読み込まれます。

これを行うには?

答えて

2

お客様の要件を満たすために、FooBarの2つの別々のルートを使用することはできません。コンテナコンポーネントには1つのルートしか設定できません(ここではFooBarと名付けます)。 FooBarは、FooBarを組み合わせています。 FooBarrender機能で2つのコンポーネントの表示を変更するには、stateFooBarとします。

関連する問題