当前位置: 首页 > news >正文

住房城乡建设网站官网入口seo任务平台

住房城乡建设网站官网入口,seo任务平台,wordpress wp syntax,乐趣浏览器app下载需求 将图片、pdf、word、excel等文件进行上传。图片、pdf等调接口A、word、excel等附件调接口B。接口关于文件是base64格式的参数 业务场景 上传资源,区分影像与附件 逻辑思路 使用原生input标签,typefile,进行上传上传后的回调&#x…

需求

图片、pdf、word、excel等文件进行上传。图片、pdf等调接口A、word、excel等附件调接口B。接口关于文件是base64格式的参数

业务场景

上传资源,区分影像与附件

逻辑思路

  1. 使用原生input标签,type='file',进行上传
  2. 上传后的回调,对文件进行分类,影像与附件
  3. 对文件进行base64编码
  4. 执行接口进行上传

代码实现

  1. 点击input进行上传,选择文件后执行onChange回调
<inputtype="file"multipleref={uploadInputRef}onChange={uploadFileOnChange}/>
  1. 对文件进行分类,我这里是通过type去判断的
export const uploadFileOnChange = async (e: ChangeEvent<HTMLInputElement>) => {const files = e.target.files;// 将影像以及附件分类const images: File[] = [];const attachments: File[] = [];for (const iterator of files ?? []) {if (iterator.type.includes('sheet') ||iterator.type.includes('excel') ||iterator.type.includes('csv') ||iterator.type.includes('word')) {attachments.push(iterator);} else {images.push(iterator);}}
};
  1. 对文件进行base64编码
async function readFileAsDataURL(file: Blob) {const result_base64 = await new Promise<string>((resolve) => {const fileReader = new FileReader();fileReader.readAsDataURL(file);fileReader.onload = () =>typeof fileReader.result === 'string' && resolve(fileReader.result);});return result_base64.split('base64,')[1];
}export const uploadFileOnChange = async (e: ChangeEvent<HTMLInputElement>) => {const files = e.target.files;// 将影像以及附件分类const images: File[] = [];const attachments: File[] = [];for (const iterator of files ?? []) {if (iterator.type.includes('sheet') ||iterator.type.includes('excel') ||iterator.type.includes('csv') ||iterator.type.includes('word')) {attachments.push(iterator);} else {images.push(iterator);}}const imageData: ImageData[] = [];const affixData: AffixData[] = [];for (const i of images) {const imgBase64 = await readFileAsDataURL(i);imageData.push({name: i.name,imgBase64,});}for (const i of attachments) {const affixBase64 = await readFileAsDataURL(i);affixData.push({name: i.name,affixBase64,});}return {imageData,affixData,};
};
  1. 拿到上一步返回的数据调接口
http://www.15wanjia.com/news/33303.html

相关文章:

  • 兰州市住房保障和城乡建设局网站淘宝推广公司
  • wap网站怎么打开自己怎么开网站
  • 个人网站建设费用百度推广电话是多少
  • 适合个人网站的名称惠州百度seo哪家好
  • 做网站白云区详细描述如何进行搜索引擎的优化
  • 晓风彩票网站建设软件淮北网络推广
  • 网站开发公司哪里济南兴田德润实惠吗真正永久免费的建站系统有哪些
  • 烟台专业网站建设公司长沙专业seo优化公司
  • 电脑在哪里制作网站360建网站
  • wordpress外贸网站建设无人在线观看高清视频单曲直播
  • 宝鸡网站建设优化怎样在百度上打广告
  • 做卡盟开端网站要多少钱百度免费安装下载
  • 商城型网站开发网站建设安徽网络优化公司
  • 网站建设找伟杨科技宁波seo整站优化
  • wordpress安装说明上海还能推seo吗
  • 给私人企业做网站推广seo网络排名优化
  • 高端定制品牌无锡网站制作优化
  • 十堰网站制作网站建设优化400报价
  • 软件开发的五个基本步骤惠州seo关键词排名
  • 常用的网页开发工具有哪些夫唯seo培训
  • 共青城网站建设公司软文推广
  • 永川网站建设免费做网站网站的软件
  • 溧水建设局网站广告推销
  • 做财经比较好的网站有哪些广州竞价托管代运营
  • 政府门户网站建设规划书武汉seo网站优化排名
  • 企业网站开发流程漯河seo公司
  • 沈阳建网站 哪家好网站建设营销型
  • 深圳做营销网站建设下载百度2023最新版安装
  • 发现了一个做字素的网站公司网站优化
  • 深圳做app网站的公司哪家好直播:韩国vs加纳直播