zoukankan      html  css  js  c++  java
  • 处理分页 当前页>1时, 操作的最后一页的最后一条数据后,向前提前一页

    * handleAgentJobs({ payload }, { call, put }) {
    const data = yield call(handleAgentJob, payload)
    if (data && data.code === 200) {
    yield put({
    type: 'handleAgentAbandonPage',
    payload
    });
    } else {
    message.error(data && data.message || '请求失败');
    }
    },
    * handleAbabonJobs({ payload }, { call, put }) {
    const data = yield call(handleAbandonJob, payload)
    if (data && data.code === 200) {
    yield put({
    type: 'handleAgentAbandonPage',
    payload
    })
    } else {
    message.error(data && data.message || '请求失败');
    }
    },




    * handleAgentAbandonPage({ payload }, { call, put, select }) {
    const pagination = yield select(_ => _.jobManage.agentJobs.pagination);
    let page = pagination.page;
    let total = pagination.total || 10;
    let current = pagination.current || 1;
    if (current > 1 && (total%10 === 1)) { // 当前页>1时, 操作的最后一页的最后一条数据后,向前提前一页
    payload.page = page - 1;
    yield put({
    type: COMMON_LOADING,
    stateKey: 'agentJobs'
    });
    payload.callback && payload.callback();
    let data = '';
    if(payload.status === AGENT_TABS_KEYS.AGENT){
    data = yield call(queryAgentJobs, payload);
    }else if(payload.status === AGENT_TABS_KEYS.NEWS){
    data = yield call(queryNewJobs, payload);
    }else if(payload.status === AGENT_TABS_KEYS.ABANDON){
    data = yield call(queryGiveUpJobs, payload);
    }
    if (data && data.code === 200) {
    yield put({
    type: COMMON_LOAD_SUCCESS,
    stateKey: 'agentJobs',
    result: {
    ...data.data,
    dataMessage: data.message,
    dataCode: data.code
    }
    });

    yield put({
    type: 'setPagination',
    stateKey: 'agentJobs',
    payload: {
    total: data.data.totalElements - 1,
    current: data.data.number || 1
    }
    });
    } else {
    yield put({
    type: COMMON_LOAD_FAIL,
    stateKey: 'agentJobs',
    error: data
    });
    message.error(data && data.message || '请求失败');
    }

    } else {
    payload.callback && payload.callback();
    yield put({
    type: 'setPagination',
    stateKey: 'agentJobs',
    payload: {
    total: total - 1,
    current: current
    }
    });
    }
    }
  • 相关阅读:
    jQuery中获取元素的属性方法attr()简单用法
    【经验】angularjs 实现带查找筛选功能的select下拉框
    【经验】Angularjs 中使用 layDate 日期控件
    在 VPS 上一键安装KMS服务脚本
    Windows 使用 TCPing 工具来获取 TCP延迟、端口通顺情况、已禁Ping服务器的延迟
    Linux 初级教程:初步进入 Linux 世界
    Debian/Ubuntu TCP拥塞控制技术 ——TCP-BBR 一键安装脚本
    Linux 下 iptables 配置详解
    在 Ubuntu 上安装 LaTeX
    代码审计学习之反射型XSS
  • 原文地址:https://www.cnblogs.com/liuerpeng/p/10123377.html
Copyright © 2011-2022 走看看