# Demo
# 导出成功弹框
# 业务背景
业务侧的绝大部分导出都已经收归到下载中心,该组件用于统一导出成功后的交互。
# 调用
import { downloadMessage } from '@xiaoe/sense'
// 目前一共以下四种情况:
// 概况页
downloadMessage()
// 异步导出(有时间)
downloadMessage({ async: true, taskDuration: 100 })
// 异步导出(无时间)
downloadMessage({ async: true })
// 同步导出
downloadMessage({ async: false })
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 参数列表
事件名称 | 说明 | 值 |
---|---|---|
onClose | 关闭时的回调 | - |
async | 是否为异步任务 | Boolean |
taskDuration | 任务时长 | String |
# 导出错误信息处理
# 业务背景
业务侧的导出功能在底层都会依赖下载中心服务,下载中心服务中存在部分基础设置的限制条件,该组件就是用于处理这些限制场景。
# 调用
该组件是一个通用的返回值处理方法,业务侧只需要传入后端导出接口的返回值({code,data,msg})即可,考虑到各个业务侧存在大量自定义的 code 码,该通用方法只用于处理基础相关业务的场景,业务侧自定义的场景保持原样。
import { checkDownloadRes } from "@xiaoe/sense"
// 对业务侧原导出方法进行修改
handleExport().then(res=>{
const { code, data } = res
// 新增这一行:判断一下方法返回的 code 数组中是否有当前 code
if(checkDownloadRes(res).includes(code)) return
// 原逻辑不用动
if( code === 0 ) {
// xxxx
} else if ( code === 1288 ) {
// xxxx
} else {
this.$message.warning('网络错误')
}
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 参数
/**
*
* @param {Object} res 后端接口返回,结构为 { code, data, msg} 的对象
* @returns {Array} 错误码列表
*/
function checkDownloadRes(res){}
1
2
3
4
5
6
2
3
4
5
6