FinClip为企业提供小程序生态圈技术产品,开发者可在FinClip小程序开发帮助中心找到相关FinClip小程序指引

# Worker(Beta)

基础库 3.0.45 及以上版本支持。 工具调试请使用 1.8.46 及以上版本,SDK 请使用 2.41.0 以上。

# wx.createWorker

Worker wx.createWorker(string scriptPath)

创建一个 Worker 线程

参数

string scriptPath

worker 入口文件的绝对路径

返回值

Worker

Worker 对象

注意事项

  • 接口使用前需要在 app.json (插件暂不支持) 中配置 workers 字段,表示 worker 代码根目录。
  • scriptPath 为入口文件的绝对路径,且不以 / 开头。
  • 目前限制最多只能创建一个 Worker,创建下一个 Worker 前请先调用 Worker.terminate

示例代码

const worker = wx.createWorker('workers/request/index.js') // 文件名指定 worker 的入口文件路径,绝对路径

worker.onMessage(function (res) {
  console.log(res)
})

worker.postMessage({
  msg: 'hello worker'
})

worker.terminate()

# Worker

# Worker.onMessage

Worker.onMessage(function listener)

监听主线程/Worker 线程向当前线程发送的消息的事件。

参数

function listener

主线程/Worker 线程向当前线程发送的消息的事件的监听函数

参数

Object res

属性 类型 说明
message Object 主线程/Worker 线程向当前线程发送的消息

# Worker.postMessage

Worker.postMessage(Object message)

向主线程/Worker 线程发送的消息。

参数

Object message

需要发送的消息。

示例代码

worker 线程中

worker.postMessage({
  msg: 'hello from worker'
})

主线程中

const worker = wx.createWorker('workers/request/index.js')

worker.postMessage({
  msg: 'hello from main'
})

# Worker.terminate

Worker.terminate()

结束当前 Worker 线程。仅限在主线程 worker 对象上调用。

© FinClip with ❤ , Since 2017