2017-03-16 2 views
0

Müssen Sie jede Registerkarte und Bildschirm an Redux (vorausgesetzt, Sie möchten die Kontrolle über alle von ihnen) tiefer in Ihrem View Tree?Verbinde() jede Containeransicht mit Redux in Reactive Native?

index.ios.js

const App =() => (
    <Provider store={store}> 
     <AppContainer /> 
    </Provider> 
) 

appContainer.js

const Tabs = TabNavigator({ 
    Test: { screen: TestPage }, 
    Create: { screen: ButtonPage }, 
    Friends: { screen: FriendsPage } 
}) 

render() { 
    return(
     <Tabs /> 
    ) 
} 

Habe ich eine In jedem

export default connect(state => ({ 

    }), 
    (dispatch) => ({ 
    actions: bindActionCreators(/* insert actions here */, dispatch) 
    }) 
)(/* insert view here */) 

benötigen, oder mit nur connect() (AppContainer) okay für globales Staatsmanagement?

Antwort

1

Ich schlage vor, dass Sie sie separat halten und mehrere connect() basierend auf den Funktionalitäten Ihrer Ansichten haben.

Zum Beispiel können Sie Ihre FriendsPage diese Funktionen müssen Freunde Maßnahmen im Zusammenhang (hinzufügen, aktualisieren, löschen Freunde), und Sie können haben

export default connect(mapStateToProps, mapDispatchToProps)(FriendsPage); 

anderer Tab Container userview sein könnte, die gemeinsame Benutzer verwaltet:

Also halten Sie sie getrennt, damit Ihr Code sauber und einfach zu warten aussieht.

+0

Ich werde sie dann getrennt halten, danke! – ARMATAV