ZeroCloud 低代码开发平台
首页
用户手册
开发者手册
首页
用户手册
开发者手册
  • 用户手册

    • 产品简介
    • 快速入门
    • 工作台
    • 组织管理
    • 数据管理
    • 业务建模

      • 表单管理

        • 表单设计
        • 组件配置

          • 组件属性
          • 组件校验
          • 组件事件
          • 组件样式
        • 基础组件

          • 标题
          • 文字
          • 图片
          • 按钮
          • 链接
          • 分割线
          • 网页
        • 布局组件

          • 表单区块
          • 网格布局
          • 标签页
          • 明细表格
          • 明细区域
        • 功能组件

          • 输入文本
          • 日期时间
          • 单项选择
          • 多项选择
          • 下拉选择
          • 计数器
          • 开关
          • 滑块
          • 评分
          • 上传附件
          • 选择用户
          • 选择部门
          • 选择数据
          • 选择颜色
          • 富文本
          • UEditor
          • 条形码
          • 二维码
          • 添加明细行
          • 流程审批
          • 历史流程
      • 表单模型

        • 模型设计
        • 用法示例
      • 视图管理

        • 视图设计
        • 基础组件

          • 文字
          • 按钮
          • 图片
          • 链接
          • 分割线
          • 标签
          • 网页
          • Html
        • 布局组件

          • 页头
          • 容器
          • 网格
          • 区块
          • 卡片
          • 标签页
        • 模态组件

          • 对话框
          • 抽屉
        • 数据展示

          • 表格
          • 数据表格
          • 树
          • 数据树
          • 轮播图
          • 日历
          • 图表
          • 时间线
          • 步骤条
          • 宫格
          • 进度条
          • 分页
          • 标记
        • 数据输入

          • 表单/表单项
          • 文本框
          • 开关
          • 日期选择
          • 单项选择
          • 多项选择
          • 下拉选择
          • 滑块
          • 评分
      • 报表管理
    • 流程设计

      • 流程定义

        • 流程设计
        • 节点配置
        • 办理人配置
      • 决策定义
      • 我的任务
      • 流程运维
      • 流程监控
    • 应用管理
    • 安全管理

      • 用户组
      • 安全角色
      • 权限资源
      • 权限分配
    • 系统监控

      • 系统监控
  • 开发者手册

    • 安装部署

      • 环境要求
      • 生产环境
    • 技术架构

      • 技术栈
    • API 文档

      • 概述
      • PC端 JS-API

        • 全局变量
        • PC表单
        • PC视图
      • 移动端 JS-API

        • 全局变量
        • 移动表单
        • 移动视图
      • 服务端 API

    • 常用案例

      • PC表单

        • 表单组件

          • 明细表格
        • 表单校验
        • 生命周期
        • 组件事件
        • 扩展方法
      • PC视图

        • 视图组件

          • 数据表格
          • 上传组件
        • 组件事件
        • 扩展方法
        • 生命周期
        • 视图样式
        • 系统案例

          • 消息提醒
          • 操作确认
          • 全屏加载
          • 批量删除
          • 高级搜索
          • 远程搜索
          • 组件间传值
          • 数据表格默认全选
          • 时间范围
          • 附件下载\预览
          • 模态层动态展示图片
          • 表格重复行合并行
          • 评分禁用
          • 右键树菜单
          • 视图中打开视图
      • 自定义服务

        • 系统表单
        • 系统视图
        • 流程服务
        • 附件文件
        • 开始
        • 环境搭建
        • Swagger 文档
        • 前台通用请求方式
        • 自定义返回值
        • 按钮点击给明细表赋值
        • 表单展示接口报错
        • 数据选择使用ajax
        • 数据源使用后台接口
        • 根据临时变量的值给后台传参
        • 批量删除
        • 删除按钮
        • 入库判断库存
        • 表单调用后台自定义接口
        • 后台发起流程
        • 出库校验
  • 常见问题

    • 问题反馈

上传组件

拦截上传

某些场景下,可能不需要所有的文件都允许上传,比如需要先通过OCR进行校验,符合规范后再进行上传,此时可以通过如下方式实现此需求:

创建扩展方法

在视图的方法中创建,具体示例如下:

async function pre_upload(file) {
    // 这个 file 就是当前用户选择的文件,如果需要传给接口校验,直接把这个 file 给接口就行
    console.log("用户上传的文件:", file);
    // 调用接口,需要把这个地址改成对的
    // let res = await ZeroCloud.util.ZcHttp.post("xxx.com/ocr");
    // console.log("接口返回的数据为:", res);
    // 根据ocr接口返回的res进行判断,这个1 == 1的条件是测试内容,实际开发中需要根据接口返回的数据进行判断
    if (1 == 1) {
        this.$message.success("成功:ocr 校验成功,允许上传")
    } else {
        this.$message.error('因为某些原因校验失败,拒绝继续上传');
        throw new Error('这是一个错误');
    }
}

配置上传组件的编辑结构

打开上传组件的编辑结构

按照如下规则进行配置即可,pre_upload即是刚才创建的扩展方法的名称

{
    "tag": "zc-view-attachment",
    "attrs": {
        // 其他内容

        "before-upload": {
            "type": "expression",
            "value": "this.methodSet.view.pre_upload"
        },

        // 其他内容
    }
}
Prev
数据表格