redux中的dispatch有什么用



我正在努力学习Brad Travery关于MERN堆栈的教程。在使用redux时,他大部分时间都使用调度功能。

例如,这里有userAction.js,

import axios from 'axios'
import { USER_LOGIN_FAIL, USER_LOGIN_REQUEST, USER_LOGIN_SUCCESS } from '../constants/userConstants'
export const login = (email, password) => async (dispatch) => {
try {
dispatch({
type: USER_LOGIN_REQUEST
})
const config = {
headers: {
'Content-Type': 'application/json'
}
}
const { data } = await axios.post('/api/users/login', {email, password}, config)
dispatch({
type: USER_LOGIN_SUCCESS,
payload: data
})
localStorage.setItem('userInfo', JSON.stringify(data))
} catch (error) {
dispatch({
type: USER_LOGIN_FAIL,
payload:
error.response && error.response.data.message ? error.response.data.message : error.message,
})
}
}

dispatch执行一个操作并"给出";它到redux存储,这反过来导致redux存储执行reducers并导致存储中的更改。

也就是说,你正在学习的教程正在教授一种可怕的过时风格的Redux。现代Redux看起来非常不同-请按照官方的Redux教程进行操作。

请阅读的核心概念

dispatch只是运行动作

相关内容

  • 没有找到相关文章

最新更新