我可以从函数组件外部更改Redux状态吗?

hfyxw5xn  于 2022-11-12  发布在  其他
关注(0)|答案(1)|浏览(128)

我正在Redux状态下存储我的api访问令牌。当我的访问令牌过期时,我的api会将一个刷新的令牌作为头发送回来。我正在尝试设置一个axios拦截器,如果一个刷新的令牌被发送回来,它将改变我的状态。

const myAxios = axios.create()

myAxios.interceptors.response.use(
(response) => {
if (response.headers['x-access-token']) {
  // Is there a way to dispatch something here to change state
}

return response
},
async function (error) {
    return Promise.reject(error)
  }
)

export default myAxios

因此,我可以很好地得到我的令牌,我只是不知道如何从这里更改状态,因为useDispatch无法从功能组件外部工作

mwecs4sa

mwecs4sa1#

首先,导出您的商店:

export const store = configureStore({
  ...
});

然后,将其导入到文件中并使用:

import { store } from './store';

...
store.dispatch() // got dispatch

相关问题