【发布时间】:2021-12-09 01:17:41
【问题描述】:
我已经尝试学习 redux 好几天了,但我学不会。在 react native redux 中,useSelector 中的状态未定义,但是当我使用 UseSelector 时,状态未定义时总是会发生这种情况,请帮忙。 这是我最简单的代码。
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;
【问题讨论】:
-
来自文档
Redux's createStore. You should not need to use this directly.createStore。你应该使用configureStore。 -
我该怎么做?
-
我已经在我的机器上检查了这段代码,它工作得很好,我可以使用 useSelector 从 redux 读取值。一个小建议是使用
console.log而不是警报。请将您的完整代码发布在 slackbits 或类似内容中,以便我查看 -
console.log 也不起作用。我写这段代码只是为了学习redux的基础知识所以这就是所有的代码。
标签: javascript reactjs react-native redux react-hooks