React Redux 的 useSelector 不更新 expo react-native 上的商店状态
useSelector of React Redux don't update state of store on expo react-native
我在网上制作了相同的模型并且它有效,我尝试使用 Redux 的 shallowEqual 作为 useSelector 函数的第二个参数,还有 lodash 库的 _.isEqual ,如 Hooks 部分中的 Redux 文档但没有用。
预期行为:
在调度操作中,具有 useSelector 的组件必须带来更新后的状态。
会发生什么:
组件带来初始状态空虚。
版本:
"Expo": "~37.0.3"
"react-native": "37.0.1",
"react-redux": "^7.2.0",
"redux": "^4.0.5"
已编辑:
我尝试重现了类似也重现同样问题的小吃的结构,这里是link:https://snack.expo.io/@danieltfischer/useselector
我查看了您的代码,发现了一个错误。
您没有从 actions
文件夹导出您的操作类型字符串常量:
// What you are doing
const CREATE_MED = 'CREATE_MED';
// What you need to be doing
export const CREATE_MED = 'CREATE_MED';
在我修复此问题后,该应用程序正在运行,一旦我发出操作,它就会为我带回最新状态并更新平面列表。
尝试进行此更改,看看是否能解决问题。
它不工作的原因是因为每次调用 reducer 函数时,CREATE_MED
操作常量是未定义的,所以它总是转到返回先前状态的默认选项。
我在网上制作了相同的模型并且它有效,我尝试使用 Redux 的 shallowEqual 作为 useSelector 函数的第二个参数,还有 lodash 库的 _.isEqual ,如 Hooks 部分中的 Redux 文档但没有用。
预期行为:
在调度操作中,具有 useSelector 的组件必须带来更新后的状态。
会发生什么:
组件带来初始状态空虚。
版本:
"Expo": "~37.0.3"
"react-native": "37.0.1",
"react-redux": "^7.2.0",
"redux": "^4.0.5"
已编辑:
我尝试重现了类似也重现同样问题的小吃的结构,这里是link:https://snack.expo.io/@danieltfischer/useselector
我查看了您的代码,发现了一个错误。
您没有从 actions
文件夹导出您的操作类型字符串常量:
// What you are doing
const CREATE_MED = 'CREATE_MED';
// What you need to be doing
export const CREATE_MED = 'CREATE_MED';
在我修复此问题后,该应用程序正在运行,一旦我发出操作,它就会为我带回最新状态并更新平面列表。
尝试进行此更改,看看是否能解决问题。
它不工作的原因是因为每次调用 reducer 函数时,CREATE_MED
操作常量是未定义的,所以它总是转到返回先前状态的默认选项。