I have been trying to learn redux for days but I can't learn it. state is undefined in useSelector in react native redux but this always happens when ever I use UseSelector the state is undefined please help. This is my my code in simplest form.
import React from 'react';
import {Provider} from 'react-redux';
import Home from './screens/home';
const App = () => {
return (
<Provider store={Store}>
<Home />
</Provider>
);
};
//store
import {createStore} from 'redux';
export const Store = createStore(reducer);
//reducer
const initialState = {
name: 'John',
};
function reducer(state = initialState, action) {
return state;
}
//action
export const setName = () => {
return {
type: SET_USER_NAME,
};
};
export default App;
import {StyleSheet, Text, View} from 'react-native';
import {useSelector} from 'react-redux';
const Home = () => {
const state = useSelector(state => state);
alert(state);
return (
<View style={styles.container}>
<Text>Hello</Text>
</View>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
});
export default Home;
You are using store before it is initialised. Move
const App = () => {
return (
<Provider store={Store}>
<Home />
</Provider>
);
};
in the bottom before export default App; then it works