React native Redux未连接到React导航中的所有堆栈

React native Redux未连接到React导航中的所有堆栈,react-native,react-redux,react-navigation,React Native,React Redux,React Navigation,我正在尝试将我的操作连接到堆栈中的一个屏幕中。 经过几个小时的摸索,我意识到connect并不是出于某种原因“连接”到我的屏幕。 使用React导航时,有些屏幕连接到Redux,而有些屏幕不连接,这有什么原因吗 const AppSwitchNavigator = createSwitchNavigator({ Open: { screen: AuthStackNavigator }, Home: { screen: MainStackNavigator } }) const AppC

我正在尝试将我的操作连接到堆栈中的一个屏幕中。 经过几个小时的摸索,我意识到connect并不是出于某种原因“连接”到我的屏幕。 使用React导航时,有些屏幕连接到Redux,而有些屏幕不连接,这有什么原因吗

const AppSwitchNavigator = createSwitchNavigator({
  Open: { screen: AuthStackNavigator },
  Home: { screen: MainStackNavigator }
})

const AppContainer = createAppContainer(AppSwitchNavigator)

class App extends Component {
  render() {
    return <Provider store={store}><AppContainer /></Provider>
  }
}
const-AppSwitchNavigator=createSwitchNavigator({
打开:{屏幕:AuthStackNavigator},
主页:{screen:MainStackNavigator}
})
const AppContainer=createAppContainer(AppSwitchNavigator)
类应用程序扩展组件{
render(){
返回
}
}
我似乎可以访问“主”堆栈中的商店,但不能访问“打开”堆栈中的商店。这可能吗?我很困惑


更新-我已经找到了解决方案。问题是,在我的stacknavigator中,我没有导入所有屏幕,因此Redux商店没有意识到它们。因此,只需导入堆栈导航器中的所有屏幕即可解决问题。

在使用redux进行状态管理的React应用程序中,您可以轻松访问提供商包装的所有子组件中的状态(存储)

您可以很容易地这样称呼您的州:

在reducer文件中:

initialState = {
    counter: 0
}

const Reducer = (state=initialState, action) => {
    switch(action.type){
      case(INCREMENT):
        return{
          ...state,
          counter: state.counter + 1
        }
    }
}

export default Reducer
在您的主页或打开的页面中:

import {connect} from 'react-redux'

----- rest of code -----

const mapStateToProps = state => {
    const counter = state.counter;
    return {counter}
};

export default connect(mapStateToProps)(YoucComponent)
有关redux的更多信息,请参见以下链接:

如果在应用程序中使用多个减速机,则必须使用combineReducer并使用以下语句调用状态:const counter=state.myReducer.counter