Skip to content

useWebWorker

类别
导出体积
325 B
上次更改
last month
相关

简单的 Web Workers 注册和通信。

Usage

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
发送数据到工作线程。
terminate() => void停止并终止工作线程。

类型声明

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
/** * 简单的 Web Workers 注册和通信。 * * @see https://vueuse.org/useWebWorker * @param url * @param workerOptions * @param options */ export declare function
useWebWorker
<
T
= any>(
url
: string,
workerOptions
?: WorkerOptions,
options
?:
ConfigurableWindow
,
):
UseWebWorkerReturn
<
T
>
/** * 简单的 Web Workers 注册和通信。 * * @see https://vueuse.org/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!: drop Vue 2 support, optimize bundles and clean up (#4349)
5988f - fix: add web worker transferable option (#3123)