详细看 https://juejin.im/post/5acf348151882579ef4f5a77
官方 https://webpack.docschina.org/loaders/worker-loader/
1 安装
项目工程目录下安装loader,目地是让Webpack识别worker文件
npm install -D worker-loader
2 配置webpack文件
向webpack配置文件中添加loader的配置
rules: [
{
test: /\.worker\.js$/, // 以.worker.js结尾的文件将被worker-loader加载
use: { loader: 'worker-loader' }
}
]
},
3 编写Worker文件以及加载, 文件名必须以 .worker.js 结尾
test.worker.js文件如下,
onmessage = function(ev){ // 也可以是self.onmessage
// 工作线程收到主线程的ev.data
};
let msg = '工作线程向主线程发送消息'
postMessage(msg); // 也可以是self.postMessage, msg可以直接是对象
app.js文件如下
import Worker from './test.worker.js';
// 创建 worker 实例
var worker = new Worker(); // 传入 worker 脚本文件的路径即可
worker.postMessage({ a: 1 });
worker.onmessage = function (event) {
console.log(event.data)
};
worker.addEventListener("message", function (event) {});
网友评论