React-Hzero-UI上传附件使用体验

HZERO前端开发实战:从环境搭建到部署上线的完整指南 在现代企业级前端开发中,数据驱动开发范式是提升开发效率和维护性的关键。其核心原理在于通过统一的数据管理层,将业务逻辑与视图渲染解耦,实现状态、校验与API交互的集中管理。这种模式的技术价值在于显著减少了样板代码,增强了代码的可预测性和可测试性。它广泛应用于中后台管理系统、数据密集型应用等场景。本文以HZERO平台为例,深入剖析其基于React和Choerodon UI的实现方案,详细讲解如何使用DataSet这一核心概念来管理表单和表格数据,并结合路由配置、API联调等工程实践,分享从项目初始化到生产环境部 阅读详情

需求:对上传文件数量限制一个

Hzero-UI 官网:添加链接描述
  state = {
    fileList: [],
    uuid: '',
  }

beforeUpload 对文件大小和数量进行限制

  beforeUpload = file => {
    if (file) {
      const isTt20M = file.size / 1024 / 1024 < 20;
      if (!isTt20M) {
        notification.error({
          message: intl.get('hiam.userInfo.view.message.fileSizeError').d('文件不能超过2M'),
        });
        return false;
      }
    }

    const list = this.state.fileList;
    const isExist = list.some(item => item === this.state.uuid);
    if (isExist) {
      notification.error({
        message: intl.get('hiam.userInfo.view.message.fileCountsError').d('只能上传一个附件'),
      });
      return false;
    }
  }

列表渲染

      {
        title: intl.get(`ssrc.ZeKuPrice.model.Upload`).d('附件'),
        dataIndex: 'attachmentUuid',
        width: 100,
        fixed: 'right',
        render: (val, record) =>
          !selectedRow.includes(record) ||
          !['TO_BE_SUBMITTED', 'APPROVE_REJECTED'].includes(record.transformStatus) ? (
            <span style={{ fontSize: '12px', color: '#bdbdbd' }}>附件操作</span>
          ) : (
            <Upload
              attachmentUUID={record.attachmentUuid}
              {...uploadProps}
              single
              beforeUpload={this.beforeUpload}
              //上传成功回调
              onUploadSuccess={() => {
                fileList.push(uuid);
                this.setState({
                  fileList: [...new Set(fileList)],
                });
                this.changeGroupValue(uuid, 'attachmentUuid', record);
              }}
              //删除成功的回调
              removeCallback={() => {
                this.changeGroupValue(null, 'attachmentUuid', record);
                const list = fileList;
                const newList = list.filter(item => item !== uuid);
                this.setState({
                  fileList: newList,
                });
              }}
              afterOpenUploadModal={uid => {
               
                if (record.attachmentUuid) {
                 // 查看已有的附件 保存id对其限制
                  fileList.push(record.attachmentUuid);
                  this.setState({
                    fileList: [...new Set(fileList)],
                  });
                }
                this.setState({
                  uuid: uid,
                });
              }}
            />
          ),
      }
HZero微服务治理平台:从架构原理到企业级实践全解析 微服务架构通过将单体应用拆分为独立部署、松耦合的服务,提升了系统的可扩展性和团队开发效率,但其治理复杂度也随之增加。其核心原理在于服务间的通信、协调与状态管理,技术价值体现在支持快速迭代、技术异构和弹性伸缩。在实际应用场景中,服务发现、配置管理、权限控制和分布式事务等成为关键挑战。本文聚焦于HZero这一开源微服务治理平台,它基于Spring Cloud Alibaba深度定制,提供了身份服务、平台服务等核心模块,并内置多租户架构支持。通过集成Seata处理分布式事务,结合Docker与Kubernetes 阅读详情

相关推荐

前端面试别再背题了:用结构化方法把面经变成知识体系

前端面试看似考察零散知识点,实则检验候选人是否具备体系化技术认知。面对海量前端八股文与面经,死记硬背难以应对追问式考核。真正有效的路径,是从浏览器原理、JS引擎、框架设计等底层概念出发,将知识组织成可调用的树状结构;再通过考点画像、STAR法则、项目深挖等工程实践方法,把面经中的高频议题转化为稳定的回答框架。随着微前端、SSE、AI辅助编码等新场景兴起,前端开发的技术边界不断扩展,结构化备战更成为连接基础原理与业务落地之间的关键能力。无论是性能优化、依赖配置,还是Worker上传大文件,只有理解概念背后的机

weixin_29007809的博客 320

react中,antd组件中的upload实现,文件的上传,文件的下载,导出,批量导出(直接调接口),上传额外的参数(data)

react中,antd组件中的upload实现,文件的上传,文件的下载,导出,批量导出(直接调接口),上传额外的参数(data)

夜空孤狼啸的博客 8238

前端面试八股文进阶:从背题到构建知识体系

前端技术栈日新月异,但JavaScript的事件循环、闭包等底层机制始终是面试考察的核心,它们构成了开发者理解浏览器运行原理的基础。掌握这些概念,不仅是为了应对提问,更是为了在工程实践中定位性能瓶颈、设计健壮应用。随着业务复杂度提升,微前端架构、大文件上传、Web Worker并行计算等真实场景成为高频技术点,面试官更看重候选人对原理的深度理解和实战经验。从基础概念到技术原理,再到工程应用,本文结合就业指导思路,讲解如何将零散八股考点串联为完整知识地图,并把知识转化为项目叙事,帮助求职者系统化备战前端面试,

weixin_29002209的博客 259

HZero UI of React使用手册文档地址

使用 babel-plugin-import(推荐)——

学亮编程手记 631

一年经验前端跳槽面经:从八股文到项目深挖的完整复盘

在技术岗位的求职中,基础原理与实战能力始终是衡量工程师潜力的核心标尺。对于拥有1-3年经验的前端开发者而言,面试不仅是知识点的考核,更是对项目思考深度与问题排查能力的综合检验。从事件循环、异步编程等JavaScript基础,到组件封装、工程化配置,再到AI辅助开发逐渐成为常态的2026年,面试官更关注候选人能否在原理层面讲清逻辑,并将技术方案落地到真实业务场景。无论是处理大数据量导出、设计缓存方案,还是参与微前端架构的选型,每一个普通功能背后都藏着区分候选人的关键细节。本文基于真实求职经历,梳理高频面试题、

weixin_28025327的博客 315

7 series FPGAs Transceiver Wizard IP核使用和测试

学习FPGA一段时间了,前面一直没有系统的总结,这学期把在项目中用到的IP核和一些调试过程中遇到的问题总结一下发出来,坚持下去,一起进步! 今天总结一下的GTH核的使用和测试。 软件版本:Vivado 2017.4 IP核版本:7 Series FPGAs Transceivers Wizard (3.6) FPGA:xc7vx690tfft1927 实现功能: 四路光纤数据接收,由于GTX IP...

qq_39921762的博客 1万+

hzero-front文件上传:Upload组件使用示例

【代码】hzero-front文件上传:Upload组件使用示例。

学亮编程手记 615

Altium Designer 16来自原理图/PCB的各种报错 (持续更新):

NO1.Nets with only one pin: 根本原因: 在BGA的原理图绘制时,我一般习惯拉出该元件的所有IO的网络,这方便利于我开发其他款板卡。同样也会因为不同板卡的需求不同而造成有些IO并没有使用到,也就是整个原理图中only one pin。 解决方案: 鼠标右键工程文件>工程参数>下图圈中的选项将“错误”更改为“警告/不报告” ...

优快云@猿谷攻城狮 1万+

揭开 Choerodon UI 拖拽功能的神秘面纱

为了提升 HZERO 系统的用户体验、减少部分操作步骤,组件库集成了卓越的拖拽功能,让用户可以更高效流畅的操作系统。

weixin_48028935的博客 1167

Linux系统centos7安装网卡驱动

有时候我们装完Centos或Ubuntu系统会发现没有网卡信息,说明网卡驱动不配置,所以我们要重新安装。 首先去服务器主板官网下载网卡驱动,注意32位和64位。 先查看网卡型号 lspci | grep -i ethernet 我的网卡型号是 00:1f.6 Ethernet controller: Intel Corporation Device 0d55。 网上一找,压根没找到这型号的网卡,别说驱动了。怀着试一试的心态,就安装i219-v系的网卡驱动,还别说,成功了。 针对i21...

wshc18的博客 2万+

单细胞轨迹分析实战:基于Monocle和CytoTRACE的细胞分化潜能与状态解析

本文提供了基于Monocle和CytoTRACE的单细胞轨迹分析实战指南。通过乳腺癌数据集,详细演示了从数据准备、伪时序分析、细胞分化潜能评估到分支点功能挖掘的全流程。结合两种工具的优势,能有效解析细胞状态动态演变,为发育和疾病研究提供关键见解。

weixin_29070861的博客 483

HZERO前端开发完整示例

平台开发新服务全部使用 Choerodon UI 进行开发,Choerodon UI 中用需要用到Choerodon UI自带的DataSet数据源。model 和 dateSet 只需要选择其中一种开发方式即可。使用 model 为旧开发方式,目前推荐使用 dataSet。但请注意,选择dataSet 开发时,请使用Choerodon UI。

学亮编程手记 2080

S7-1200 数据日志

数据日志文件按照标准 CSV 格式存储在 S7-1200 CPU 装载存储器或 S7-1200 SIMATIC 存储卡中。分别可通过 PLC Web 服务器或将数据文件传送到 PC 进行管理、查看。 一、测试目的: 下面以数据日志文件存储在 S7-1200 CPU 装载存储器中,使用PLC Web 服务器进行管理为例,实现下述功能: (1)执行“DataLogging”指令将产品型号“Type”,长度“Length”,宽度“Width”三个变量值写入到数据日志文件; (2)当写入的条数达到设定的3条

qq_43029096的博客 2542

企业级微服务架构实战:基于hzero平台的核心设计与项目落地

微服务架构通过将单体应用拆分为一组小型、独立的服务,实现了系统的松耦合、高内聚和独立部署,是现代企业应对复杂业务、提升研发效能的关键技术路径。其核心价值在于支持技术栈异构、弹性伸缩和快速迭代,广泛应用于电商、金融、物联网等大规模分布式场景。在具体实践中,如何高效构建统一的技术中台、实现精细化的权限与数据隔离,成为企业级应用的核心挑战。本文聚焦于多租户(SaaS)架构与领域驱动设计(DDD)的深度实践,通过解析一个集成了身份管理、消息服务和文件处理等通用能力的微服务应用平台,阐述如何利用代码生成与低代码理念,

weixin_33898233的博客 598

OpenCV实战系列——图像线条提取

基于内容的图像分析,需要从构成图像的像素集合中提取有意义的特征。轮廓、线条、区域等是基本的图像基元,可用于描述图像中包含的元素。本节将介绍如何提取重要的图像线条特征。

m0_58523831的博客 1万+

DRM全解析 —— encoder详解(3)

DRM全解析 —— encoder详解(3)

phmatthaus的专栏 493

企业级微服务开发利器:HZERO平台核心架构与实战指南

微服务架构通过将单体应用拆分为独立、自治的服务,提升了系统的灵活性、可扩展性和开发效率,已成为现代企业级应用的主流技术选型。其核心原理在于服务解耦、独立部署和分布式通信。这一架构模式的技术价值在于支持快速迭代、技术异构和弹性伸缩,尤其适用于复杂业务场景和中大型团队协作。然而,微服务也带来了服务治理、配置管理、链路追踪和统一权限控制等新的复杂性挑战。HZERO平台正是针对这些企业级开发痛点,提供了一套标准化的微服务应用平台解决方案。它深度集成了身份与访问管理(IAM)、多租户(SaaS)架构、消息调度等通用能

cuanwei9356的博客 640

高通IPA硬件加速介绍

‌ 高通IPA (Internet Protocol Accelerator)模块是一种硬件加速模块,由高通公司(Qualcomm)提供,主要用于优化移动设备上的网络数据传输,特别是通过 LTE 、 5G 等移动网络的数据传输‌‌。IPA模块通过硬件加速,显著提高了数据传输的速度和效率,同时降低了设备的功耗,并提供了更稳定的网络连接,减少了数据传输中的丢包和延迟‌。

四儿家的小祖宗的博客 1627

xlsx模块 前端_利用xlsx-syle前端导出excel且支持自定义样式

利用xlsx-syle前端导出excel且支持自定义样式前言本文的代码是基于react的。本文仅用于记录我在前端导出excel遇到的问题的笔记整理。需求描述需要前端来实现对数据的导出,导出成excel格式。excel打开后的样式要符合需求图需求图:导出1.png前期解决过程我在网上找到前端用于导出的插件js-xlsx,按照操作说明鼓捣完成后导出excel的样子只是最基础的模板导出2.png当我想进...

weixin_30322969的博客 1107

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

2026前端面试全攻略:从基础八股到工程场景的系统备战

在技术迭代加速的今天,前端面试早已不是单纯背诵八股文就能通关的游戏。从JavaScript数据类型判断、事件循环机制,到浏览器渲染流程与HTTP缓存策略,扎实的基本功仍然是能力验证的基石。随着工程化复杂度提升,面试官越来越关注候选人在真实场景中的决策能力:如何设计一套权限系统、如何实现大文件分片上传、如何优化首屏性能。与此同时,微前端、组件库中的字典管理、Vite与Webpack的构建差异,以及像anything-llm这类AI应用的前端实践,正成为2026年面试高频考察的新方向。从agent面经中也能看到

weixin_33793620的博客 298

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

2025百度前端高频面试题:考点解析与备战指南

前端面试是检验工程师基础与实战能力的关键环节,其中JavaScript事件循环、闭包与内存管理等核心原理,是理解浏览器异步机制和代码质量的基石。掌握这些原理,不仅能应对复杂业务场景下的性能调优,还能为后续的工程化实践提供支撑。随着前端工程化与性能优化的重要性日益凸显,面试官更关注候选人在真实项目中解决问题的能力,例如大型中后台系统的权限设计、微前端架构选型,以及大文件上传等复杂场景的实现。本文系统梳理2025年百度前端高频面试题,涵盖JS核心原理、浏览器渲染、框架原理、性能优化与项目深挖等方向,并给出实战解

weixin_30493401的博客 394

echarts与dataV实现前端看板

文章目录前言一、ui图二、分析三、实现1.dataV轮播总结 前言 echarts与dataV作为看板开发模板,以本次项目为例,逐一实现项目中的难点问题 一、ui图 首先这是ui图,也就是本次项目要实现的目标 二、分析 ui图中有大致五个区域,其中四个区域为轮播,也就是月度计划中的进度条,日计划的表格,以及下方的柱状图和饼图左右轮播。 三、实现 1.dataV轮播 这算是本次项目中最简单的一环,作为优秀的可视化ul组件,dataV给我们创造了很多便利,代码如下: const config = {.

weixin_44316674的博客 4028

HZERO值集视图升级!优化树形结构,支持分页、懒加载和自定义根节点查询参数!

HZERO平台升级值集视图,新增树形分页加载、懒加载和自定义根节点查询功能,提升大数据处理能力。敬请关注我们的详细配置指南,助您高效操作!

weixin_48028935的博客 737

react UI 组件库Ant Design of React的使用

学习网址:https://ant.design/docs/react/introduce-cn github地址:https://github.com/hushaohhy/react-router-dom-demo/tree/future/1.0.2 github更改的内容:https://github.com/hushaohhy/react-router-dom-demo/commit/fe...

hhy1006894859的博客 694

React附件上传组件

React基础组件封装-附件上传

梦龍 937

react Upload 组件

import React, { Component } from 'react';import {Link, IndexLink, hashHistory} from "react-router";import { Upload,} from 'antd';export default class Upload extends Component { constructor(props){ ...

wyd的博客 4888
上一篇: vue2响应式原理的理解
下一篇: Tornado学习
Orange_usst_code
博客等级 码龄7年 18粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值