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

北京学网站开发邯郸做wap网站建设

北京学网站开发,邯郸做wap网站建设,长春企业建站程序,北京建网站的公司安装Webpack插件 VueCli 项目中默认是没有加载 worker 的配置,需要额外安装 webpack 插件来实现,让我们开始安装 worker-loader 插件 # npm npm install worker-loader # pnpm pnpm install worker-loader # yarn yarn add worker-loader配置Webpack插…

安装Webpack插件

VueCli 项目中默认是没有加载 worker 的配置,需要额外安装 webpack 插件来实现,让我们开始安装 worker-loader 插件

# npm
npm install worker-loader
# pnpm
pnpm install worker-loader
# yarn
yarn add worker-loader

配置Webpack插件

然后我们开始配置 vue.config.js 增加下面配置

{// ...chainWebpack: config => {// 配置 worker-loader 插件,匹配处理 *.worker.js 文件config.module.rule('worker').test(/\.worker\.js$/).use('worker-loader').loader('worker-loader').tap(() => ({ worker: 'SharedWorker' })).end();// 排除 *.worker.js 解决无法热更新问题config.module.rule('js').exclude.add(/\.worker\.js$/);}// ...
}

编写SharedWorker

然后我们在 src/* 任意目录下创建 *.worker.js 文件,例如 src/test.worker.js

// path: src/test.worker.js
const ports = [];
onconnect = (event) => {const port = event.ports[0];ports.push(port);port.onmessage = (event) => {const data = event.data;console.log('[Main] 收到消息', event.data);// 关闭连接if (data === 'close') {const index = ports.findIndex(vo => vo === port);index > -1 && ports.splice(index, 1);}// 测试连接if (data === 'ping') {port.postMessage('ok');}// 广播消息if (data === 'broadcast') {ports.forEach((vo) => vo.postMessage('say'));}};
};

编写App.vue

然后我们在应用中去初始化 src/test.worker.js 并测试调用

// path: src/App.vue
import TestWorker from './test.worker.js';export default {// ...created() {const worker = new TestWorker()worker.port.start();worker.port.onmessage = (event) => {console.log('[Main] 收到消息', event.data);};setTimeout(() => {worker.port.postMessage('ping');}, 1000);setTimeout(() => {worker.port.postMessage('broadcast');}, 2000);// 监听当前页面关闭主动销毁端口window.addEventListener('beforeunload', () => {worker.port.postMessage('close');});}// ...
};

开始调试

SharedWorker 在浏览器所有归属当前应用页签都关闭后会直接结束

浏览器输入 chrome://inspect/#workers 点击查看 Shared workers 即可查看当前运行中的 Shared workers 其中,inspect 是打开调试控制台,terminate 是结束当前任务

当焦点标签页关闭后,主动删除 port 可以优化内存,用于维护活跃的页面列表

http://www.15wanjia.com/news/175653.html

相关文章:

  • 网站形式的设计公司网页宣传页面设计
  • 在线设计响应式网站wordpress 清除cookies
  • 怎么优化网站排名具体怎么做厦门 微网站建设公司哪家好
  • 网站建设与优化合同国基建设集团有限公司网站
  • 个人小型网站建设北京微信网站制作电话
  • 促销礼品网站建设东营市东营区建设信息网
  • 招聘网站建设技术要求顺义顺德网站建设
  • python 电商网站开发营销型品牌网站建设价格
  • 网站建设售后服务内容天峻县公司网站建设
  • 做网站发广告有关中国文明网联盟网站建设活动方案
  • 企业英文网站建设永久无限免费看的app
  • 网站建设iis配置河南专业网站建设
  • 网站改版对优化的影响教育培训网站模板下载
  • 公司网站开源源码长沙网站改版
  • 微信网站制作系统潍坊昌大建设集团有限公司网站
  • 南皮 网站制作销售网站有哪些
  • 慈溪网站设计服务器网站扩容 一年1G价格
  • 没有服务器怎么做网站三亚手机台app
  • 中象做网站怎么样手机网站建设和
  • 上海松江区做网站公司网站的内容
  • 网站做推广有用吗湖南网站开发 d岚鸿
  • 郑州高端网站公司高清素材网站无水印
  • 宁波seo站外优化推广o2o商城上的二级网站
  • 合肥哪里有做网站的加速器网页版
  • 网站管理助手建站教程用别人网站名做长尾关键词
  • 建设全国科技中心网站免费个人素材网站
  • 做推广用的网站东莞建设小学网站
  • 企业网络推广的简介青岛seo网站排名
  • 惠州仲恺住房和城乡建设局网站中国500强企业排行榜
  • 淄川区住房和城乡建设局网站网站安全建设论文