redux - Redux 接受了组件外部的访问存储值
问题描述
如何访问redux-toolkit store
React 组件之外的变量?在 React 组件中,我可以使用
import { useSelector } from 'react-redux';
const isAuthenticated: boolean = useSelector(
(state: RootState) => state.user.isAuthenticated,
);
因为 useSelector 不允许在 React 之外访问。或者我应该在 React 组件中调度时传递变量吗?createAsyncThunk
我需要API 调用中的访问变量
解决方案
createAsyncThunk将传入一个thunkApi
对象作为有效负载创建者回调的第二个参数,您可以在该对象上调用该getState
方法。
const fetchUserById = createAsyncThunk(
'users/fetchByIdStatus',
async (someArg, thunkApi) => {
const state = thunkApi.getState()
// whatever logic you need.
const response = await userAPI.fetchById(someArg)
return response.data
}
)
推荐阅读
- python - django如何将多个值添加到多对多关系
- node.js - 带有 npm 脚本的 Node JS Chrome 调试器
- jupyter-notebook - Chrome 中的 Jupyter 笔记本
- vue.js - 带有 Bulma 下拉菜单的 Vue v-for
- google-apps-script - Google App Scripts OnEdit 触发器帮助避免“太多同时调用”
- ios - 按下按钮时奇怪的崩溃
- python - 如果单元格数据匹配,比较 2 个数据框列并在一个数据框中添加一个新列作为“是”或“否”
- javascript - 如何在不重新加载/刷新网页的情况下将数据插入 MongoDB 服务器并显示在 html 表上
- batch-file - 如何检查文件夹大小并将其与已知大小进行比较并回显通过或失败 - 批处理脚本?
- r - 可视化优化路径直到在 R 中收敛