2017-03-16 85 views
0

你必須在你的視圖樹中將每個Tab和Screen連接到Redux(假設你想對所有這些進行狀態控制)?使用React Native中的Redux連接()每個容器視圖?

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 /> 
    ) 
} 

我需要

export default connect(state => ({ 

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

在每一個,或者只是有連接()(AppContainer )全球狀態管理好嗎?

回答

1

我建議你保持它們獨立,並根據你的視圖的功能有多個connect()。

例如,您FriendsPage可能是有關朋友的操作(添加,更新,刪除好友)功能,你可以有

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

另一個標籤的容器可以是用戶視圖,其管理普通用戶:

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

因此,讓它們分開將使您的代碼看起來整潔,易於維護。

+0

我會讓他們分開,謝謝! – ARMATAV