跳到主要内容

useWebWorker

分类
导出大小
325 B
上次更改
3 个月前
相关

简单的 Web Workers 注册和通信。

用法

ts
import { 
useWebWorker
} from '@vueuse/core'
const {
data
,
post
,
terminate
,
worker
} =
useWebWorker
('/path/to/worker.js')
状态类型描述
dataRef<any>对通过 worker 接收到的最新数据的引用,可以通过监听来响应传入消息
workerShallowRef<Worker | undefined>对 WebWorker 实例的引用
方法签名描述
post(message: any, transfer: Transferable[]): void
(message: any, options?: StructuredSerializeOptions | undefined): void
向 worker 线程发送数据。
terminate() => void停止并终止 worker。

类型声明

ts
type 
PostMessage
= (typeof
Worker
.
prototype
)["postMessage"]
export interface
UseWebWorkerReturn
<
Data
= any> {
data
:
Ref
<
Data
>
post
:
PostMessage
terminate
: () => void
worker
:
ShallowRef
<Worker | undefined>
} type
WorkerFn
= (...
args
: unknown[]) => Worker
/** * Simple Web Workers registration and communication. * * @see https://vueuse.org.cn/useWebWorker * @param url * @param workerOptions * @param options */ export declare function
useWebWorker
<
T
= any>(
url
: string,
workerOptions
?: WorkerOptions,
options
?:
ConfigurableWindow
,
):
UseWebWorkerReturn
<
T
>
/** * Simple Web Workers registration and communication. * * @see https://vueuse.org.cn/useWebWorker */ export declare function
useWebWorker
<
T
= any>(
worker
: Worker |
WorkerFn
,
):
UseWebWorkerReturn
<
T
>

来源

源代码文档

贡献者

Anthony Fu
Anthony Fu
Antério Vieira
SerKo
René Hellenes
Yasser Lahbibi
DarknessChaser
Young
karma
Shinigami
Mario Kolli
Shinigami
wheat
Alex Kozack
userquin

更新日志

0a9ed - feat!: 放弃对 Vue 2 的支持,优化打包并清理 (#4349)
v10.2.0
5988f - fix: add web worker transferable option (#3123)

根据 MIT 许可证发布。