提供程序存储无法在 Connect() 的上下文或属性中找到



我一直收到"在"连接(销售订单列表("错误的上下文或道具中找不到'商店'。我提供了提供商商店,您可以在下面的 App.js 文件中看到。不确定错误来自什么。这是我第一次尝试将 redux 与 react-native 集成,我无法将所有内容连接在一起。任何有经验的人请帮忙。谢谢=(

我的应用.js

const store = createStore(reducers, window.__REDUX_DEVTOOLS_EXTENSION__ && 
window.__REDUX_DEVTOOLS_EXTENSION__(), applyMiddleware(Thunk));
console.log(store.getState());
export default class App extends Component {
constructor(props) {
super(props);
this.state = {};
}
state = { loggedIn: null};
renderView() {
switch (this.state.loggedIn) {
case true:
return <AppNavigator />
case false:
return <Login />;
default:
return <AppNavigator />;
}
}
render() {
return (
<Provider store={store}>
<View style={styles.container}>
{this.renderView()}
</View>
</Provider>
);
}
}

索引.ios.js

import {
AppRegistry,
} from 'react-native';
import App from './src/components/App';
import { StackNavigator } from 'react-navigation';
import SalesOrderList from './src/components/SalesOrderList';
import SalesOrderItem from './src/components/SalesOrderItem';
const AppNavigator = StackNavigator({
SalesOrderList : { screen: SalesOrderList },
SalesOrderItem : { screen: SalesOrderItem }
});
AppRegistry.registerComponent('issicrm', () => AppNavigator);
export default AppNavigator;

因此,您要在index.ios.js中注册AppNavigator组件:AppRegistry.registerComponent('issicrm', () => AppNavigator);.

如果您仔细观察,您链接的AppNavigator组件只是一个 StackNavigator 组件,它根本没有连接到您的 Redux 存储,这就是为什么您在SalesOrderList组件的连接调用中看到错误的原因。

我想你可能想在你的index.ios.js中注册你的App组件,因为你导入了它,但从未使用过它。

最新更新