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

【前端】多线程 worker

VUE3  引用

npm install worker-loader
 

vue.config.js文件的defineConfig里加上配置参数

  chainWebpack: config => {
    config.module
      .rule('worker-loader')
      .test(/\.worker\.js$/)
      .use({
        loader: 'worker-loader',
        options: {
          inline: true
        }
      })
      .loader('worker-loader')
      .end()
  }

先在src目录下新建workers文件夹,接着在里面新建worker.js,在js文件里添加下面的测试代码:

addEventListener('message', e => {
    const { data } = e
    console.log(data)
    setTimeout(() => {
        return postMessage('线程完成')
    }, 1000)
})
export default {}

测试

<template>
  <div>
    <h1>vue3-Worker</h1>
    <button @click="openWorker">开启线程</button>
    <p>F12打开浏览器控制台查看效果</p>
  </div>
</template>

<script setup>
import Worker from 'worker-loader!@/workers/worker'
const openWorker = () => {
  const worker = new Worker()
  worker.postMessage('开启线程')
  worker.onmessage = e => {
    console.log(e.data)
    setTimeout(() => {
      worker.postMessage('线程关闭')
      worker.terminate()
    }, 1000)
  }
}
</script>


http://www.kler.cn/a/157358.html

相关文章:

  • 十九:Spring Boot 依赖(4)-- spring-boot-starter-security依赖详解
  • 三种单例实现
  • 鸿蒙next版开发:ArkTS组件通用属性(Z序控制)
  • C#-命名空间
  • 100+SCI科研绘图系列教程(R和python)
  • 【AI写作宝-注册安全分析报告-无验证方式导致安全隐患】
  • 解决msvcp140.dll丢失问题的5种方法,验证有效
  • Linux Namespace技术
  • C#图像处理OpenCV开发指南(CVStar,04)——图片像素访问与多种局部放大效果的实现代码
  • TensorRT-LLM保姆级教程(一)-快速入门
  • 价差后的几种方向,澳福如何操作才能盈利
  • web自动化 -- pyppeteer
  • 计算机网络(二)| 物理层上 | 数据通信基础知识 调制 频率范围 信噪比
  • 数据结构与算法(四)分治算法(Java)
  • Python 3 读写 json 文件
  • 小程序长按识别二维码
  • UE中C++创建对象方法不完全汇总
  • gitlab高级功能之CI/CD组件 - 实践(二)
  • Android Framework 电池提醒相关Dialog熄屏消失的问题
  • Redis实战篇笔记(最终篇)
  • Java核心知识点整理大全18-笔记
  • 简单的界面与数据分离的架构
  • TensorRT-LLM保姆级教程(二)-离线环境搭建、模型量化及推理
  • 十二月四日多继承
  • 2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-C
  • 竞赛选题YOLOv7 目标检测网络解读