欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

项目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
};
相关标签: redux

上一篇: java第三周学习笔记:

下一篇: redux