项目action封装
程序员文章站
2022-07-16 14:27:14
...
保存一下
import callApi from '../../utils/callApi';
import api from '../../api';
/**
* callApi
* @param dispatch
* @param formData
* @param requestUrl
* @param type 设置action的type
* @returns {function(*)}
*/
const commonCallApi = (dispatch, formData, requestUrl, type) => {
return callApi.post(requestUrl, formData).then(res => {
if (res.code === 200) {
const data = type
? dispatch({
type,
data: res.data
})
: res;
return Promise.resolve(data);
}
return Promise.reject(res);
});
};
/**
* 公共action
* @param requestUrl
* @param formData
* @param type 设置action的type
* @returns {function(*)}
*/
const commonAction = (requestUrl, formData, type) => {
return dispatch => {
return commonCallApi(dispatch, requestUrl, formData, type);
};
};
/**
* 获取列表
* @param formData
* @returns {function(*)}
*/
const getList = formData => {
return commonAction(api.getList, formData, 'get_list');
};
export default {
getList
};
上一篇: java第三周学习笔记:
下一篇: redux
推荐阅读
-
.NET项目中实现多工程文件共用的方法
-
从零开始搭建前后端分离的NetCore2.2(EF Core CodeFirst+Autofac)+Vue的项目框架之十数据库基础方法的封装
-
我来告诉你:VS2019开发ASP.NET Core 3.0 Web项目,修改视图后,刷新浏览器看不到修改后的效果怎么处理
-
SpringMVC(day1搭建SpringWebMvc项目)
-
记一次EF Core DBContext在Action委托中GC异常的问题.
-
Intellij IDEA搭建vue-cli项目的方法步骤
-
Vue项目pdf(base64)转图片遇到的问题及解决方法
-
android教程之intent的action属性使用示例(intent发短信)
-
Go语言【项目】 websocket消息服务
-
ubuntu18.04 -- 创建第一个Django项目