title: Taro.onCompassChange(callback)

sidebar_label: onCompassChange

监听罗盘数据变化事件。频率:5 次/秒,接口调用后会自动开始监听,可使用 Taro.stopCompass 停止监听。

支持情况:onCompassChange - 图1 onCompassChange - 图2 onCompassChange - 图3

参考文档

类型

  1. (callback: Callback) => void

参数

参数 类型 说明
callback Callback 罗盘数据变化事件的回调函数

Callback

罗盘数据变化事件的回调函数

  1. (result: OnCompassChangeCallbackResult) => void
参数 类型
result OnCompassChangeCallbackResult

OnCompassChangeCallbackResult

参数 类型 说明
accuracy string or number 精度

由于平台差异,accuracy 在 iOS/Android 的值不同。

- iOS:accuracy 是一个 number 类型的值,表示相对于磁北极的偏差。0 表示设备指向磁北,90 表示指向东,180 表示指向南,依此类推。
- Android:accuracy 是一个 string 类型的枚举值。
direction number 面对的方向度数

accuracy

参数 说明
high 高精度
medium 中等精度
low 低精度
no-contact 不可信,传感器失去连接
unreliable 不可信,原因未知
unknow ${value} 未知的精度枚举值,即该 Android 系统此时返回的表示精度的 value 不是一个标准的精度枚举值

示例代码

  1. Taro.onCompassChange(function (res) {
  2. console.log(res.direction)
  3. })