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

房产网有哪些网站国际新闻环球网

房产网有哪些网站,国际新闻环球网,如和建立网站,月光博客 网站模板前端web worker提升性能实战案例 Web Worker 的特点 多线程:Web Worker 运行在独立的线程中,不会阻塞主线程。 通信机制:Worker 和主线程之间通过 postMessage 和 onmessage 进行通信。限制:Worker 不能直接操作 DOM。 Worker 不能…

前端web worker提升性能实战案例

Web Worker 的特点
多线程:Web Worker 运行在独立的线程中,不会阻塞主线程。
通信机制:Worker 和主线程之间通过 postMessage 和 onmessage 进行通信。限制:Worker 不能直接操作 DOM。
Worker 不能使用 window 对象或某些浏览器 API(如 alert、document 等)。Worker 脚本必须与主线程脚本同源(相同协议、域名和端口)。

前端使用web worker开启多线程让计算量的的内容在单独线程运行解决主线程卡死的问题

vue项目代码如下:
demo.vue页面内容<div class="operationOrderClass"><div class="titleMain">订单查询列表</div><input type="text"><el-button type="text" @click="exportExcel">导出</el-button></div>
demo.vue页面js内容
import * as XLSX from 'xlsx';//npm i xlsx下载export default{methods:{exportExcel(){console.time('timeFN'); // 打印执行时间let wr=new Worker('/worker.js');//Worker 脚本必须与主线程脚本同源console.log('wr=',wr);console.log('导出');let arr=[];for(let i=0;i<100000;i++){arr.push({enterpriseName: "测试企业"+i,projectName: "测试项目"+i,guaranteeNo: "测试保函编号"+i,payAmount: "测试金额"+i,merchantName: "测试机构"+i,orderStatus: "测试状态"+i,updatedTime: "测试更新时间"+i,})}console.log('arr=',arr);wr.postMessage(arr);wr.addEventListener('message',function(e){console.log('e=',e.data);// 生成 Excel 文件并触发下载 将e.data写入名为data.xlsx的文件XLSX.writeFile(e.data, 'data.xlsx');//这步骤需要放到主线程 因为可能需要操作  dom worker无法操作domconsole.timeEnd('timeFN'); // 打印执行时间})},// 导出}
}

worker.js

importScripts('/xlsx.full.min.js'); // importScripts 是 Worker 中特有的方法,用于同步加载并执行外部 JavaScript 文件 先使用cdn下载放到vue项目的public文件夹中 xlsx.full.min.js
self.addEventListener("message", function (e) {let arr = e.data;// 将 JSON 数据转换为工作表const ws = XLSX.utils.json_to_sheet(arr);// 创建一个新的工作簿const wb = XLSX.utils.book_new();// 将工作表添加到工作簿中,并命名为'Sheet1'XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');// 发送工作簿给主线程self.postMessage(wb);
})

通过以上代码可以将10万级别的大文件数据,处理生成文件并下载下来,在生成Excel过程中可以将主线程空闲做表单输入等其他事情而不阻塞主线程执行页面或其他js操作;如果没有web worker主线程下载10万的表格数据处理需要3.5s,这期间是阻塞主线程的;


文章转载自:

http://KsM2Pu1a.xdzLj.cn
http://mXCwkwOP.xdzLj.cn
http://2EXbAqnM.xdzLj.cn
http://tcEJUYuY.xdzLj.cn
http://TcVGAyM5.xdzLj.cn
http://VqKtOcYe.xdzLj.cn
http://L5r6FTA4.xdzLj.cn
http://G1KXwdk1.xdzLj.cn
http://sO9Gg3MB.xdzLj.cn
http://mq6q8uAr.xdzLj.cn
http://uxvIkQuN.xdzLj.cn
http://uBXKMsn7.xdzLj.cn
http://NWVQJ9KW.xdzLj.cn
http://Budfl25B.xdzLj.cn
http://oBToJh8v.xdzLj.cn
http://k6oPe8EU.xdzLj.cn
http://hWLCKCpe.xdzLj.cn
http://3Jrha7Kp.xdzLj.cn
http://JX4Tm1kh.xdzLj.cn
http://9wc5KUbj.xdzLj.cn
http://CpbRhBsB.xdzLj.cn
http://SO0oJvxz.xdzLj.cn
http://GStoCZa7.xdzLj.cn
http://Ln3lAZAR.xdzLj.cn
http://c1JLorZ2.xdzLj.cn
http://PT4JfGZr.xdzLj.cn
http://LJiLC3Je.xdzLj.cn
http://zl7ksGqW.xdzLj.cn
http://yJhPOlrV.xdzLj.cn
http://kqkcQesE.xdzLj.cn
http://www.dtcms.com/wzjs/700593.html

相关文章:

  • 互联网项目名称大全网站优化成都哪里好
  • 雄县没有做网站的公司下载类网站 建设方案
  • 建一个类似亨物说网站建设费用深圳正能量电子网
  • 服饰 视频 网站建设百度关键词在线优化
  • 做外汇模拟的网站天津百度网站快速排名
  • 设计网站推荐素材网站网页制作工具中文版
  • 福田专业做网站公司成都网站设计策划免费
  • 做一个自适应网站多少钱湖南汉泰建设有限公司网站
  • 一家专门做特产的网站网站建设公司天强科技
  • 二手交易网站开发技术路线自己网站做seo
  • 找别人做网站注意事项wordpress 首页制作
  • 北京建设教育协会网站首页普通企业网站建设
  • 网站开发维护印花税知识库管理系统软件
  • 网站怎么后台登陆群晖 wordpress 配置文件
  • 建立网站项目计划书模板织梦网站上传数据库
  • 深圳建设品牌网站没封的网址免费兄弟
  • 建设网站需要营业执照吗免费外贸建站平台
  • 国外html5做网站晋城市网站建设管理人员
  • 关于网站建设项目实训报告建网站 pdf
  • 物流网站素材黑龙江省瑞驰建设集团网站
  • 电商网站难做吗wordpress 标签显示数量
  • 在哪里创建网站东明菏泽网站建设
  • 苏州建站公司优搜苏州聚尚网络西安网上进行公司
  • 工程建设招标网都有哪些网站wordpress完全卸载教程
  • 安阳市网站建设云南专业网站建站建设
  • 铜仁市建设局网站WordPress数据库禁用插件
  • 搜索排名影响因素全网优化推广公司
  • 东莞网站设计推荐易维达2卓训网是个什么网站
  • 如何做网站的后台管理安徽建设厅网站考勤
  • 上海建设工程学校网站php网站开发程序填空题