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

seo网站改版方案怎么写怎么分析网站用什么技术做的

seo网站改版方案怎么写,怎么分析网站用什么技术做的,齐河县工程建设监理有限公司网站,网络营销推广平台有哪些文章目录一、技术方案二、前端具体实现代码分析转换逻辑注意事项一、技术方案 后台返回 base64 数据 {code: 0,data: "base64;...", }前端进行数据格式转化并下载成 Excel 文件 这篇文章主要介绍第二个步骤的实现。 二、前端具体实现 代码 src/utils/transform…

文章目录

  • 一、技术方案
  • 二、前端具体实现
    • 代码
    • 分析
      • 转换逻辑
      • 注意事项

一、技术方案

  1. 后台返回 base64 数据
{code: 0,data: "base64;...",
}
  1. 前端进行数据格式转化并下载成 Excel 文件

这篇文章主要介绍第二个步骤的实现。

二、前端具体实现

代码

src/utils/transformat.ts

export function base64ToBlob(base64: string, mimeType) {const byteCharacters = atob(base64)const byteNumbers = new Array(byteCharacters.length)for (let i = 0; i < byteCharacters.length; i++) {byteNumbers[i] = byteCharacters.charCodeAt(i)}const byteArray = new Uint8Array(byteNumbers)return new Blob([byteArray], { type: mimeType })
}

src/pages/test.tsx

 const handleDownload = (file: Blob) => {const fileName = `test_${Date.now()}.xlsx`const element = document.createElement("a")element.href = URL.createObjectURL(file)element.download = fileNamedocument.body.appendChild(element)element.click()document.body.removeChild(element)}
const onClick = () => {getFileContent(id).then((res) => {if (res.code === 0) {const blob = base64ToBlob(res.data,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")handleDownload(blob)} else {console.error('download failed...')}})
}

分析

转换逻辑

React 本身并没有提供直接的 base64 → Blob → 下载 的 API,因为这是浏览器原生能力。但是浏览器里有几个通用 API 可以用来处理:

  1. atob / btoa

    • atob(base64):把 base64 字符串解码为普通字符串(二进制仍然是字符串形式)。
    • btoa(string):把字符串编码为 base64。
    • ⚠️ 注意:只能处理 非 UTF-8 的 ASCII 字符,遇到中文等多字节字符会报错。
  2. Blob

    • 接着可以把 Uint8ArrayArrayBuffer 转成 Blob

    • 下载文件时常用:

      const blob = new Blob([uint8Array], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" });
      
  3. URL.createObjectURL

    • 最后把 Blob 转成一个临时的 URL,用于 <a> 下载。

      const url = URL.createObjectURL(blob);
      

注意事项

  • MIME 类型要正确,Excel 用:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • PDF 用:application/pdf
  • base64 一般比较大,建议后端尽量返回二进制(Blob 流),效率更高。
  • 如果后端要传 base64,最好用 gzip 压缩后再传,否则网络传输会膨胀 30% 左右。
http://www.dtcms.com/a/567465.html

相关文章:

  • wordpress 电商网站济南企业免费建站
  • 广告设计公司宁波百度seo排名优化软件
  • 国外购买域名网站电商营销推广方案
  • 建设网站服务域名可以自己注册吗
  • 石河子做网站公司贵州软件定制
  • 武进附近做网站的公司有哪些如何进行企业营销型网站建设
  • 一级a做爰片 网站就能看网站体系优势
  • 湖北襄阳网站建设企业网页制作哪个公司好
  • 常用外贸网站wordpress比较好的主题
  • 贵州省建设厅官网网站wordpress error log
  • 江阴网站建设培训国际外贸平台排名
  • 泉州网站建设dreamnm做的好的宠物食品网站
  • 怎样做视频上网站赚钱软文发稿平台
  • wordpress双站电子产品网站建设策划
  • 阿里巴巴网站制作内网穿透做网站
  • 顺义企业网站建站公司北京网站搭建服务
  • 温州建设网站哪家好建网站不花钱免费建站
  • 福建省建设干部培训中心网站首页网站空间500m是什么
  • wex5 后端实现全网站开发北京市通信管理局 网站备案
  • 小说网站开发源码东营房地产网站建设
  • 中国建设会计学网站自学网站查分数
  • 高校门户网站建设建议视频网站dedecms
  • 西安网站建设 大德织梦网站logo
  • 微信平台APP网站建设怎么样wordpress的模板目录在哪里
  • 焦作网站开发重庆做网站 外包公司
  • 好的手表网站充电网站建设方案
  • 有没有教做网站的app微信网页链接怎么制作
  • 天津地区网站建设个人怎么做旅游网站
  • 网站全局搜索如何做网站建站侵权怎么办
  • 建网站做淘宝客赚钱吗wordpress 上级分类