# wx.worklet

基础库 2.29.2 开始支持,低版本需做兼容处理

相关文档: worklet 动画

worklet 对象,可以通过 wx.worklet 获取。

# 方法

# SharedValue worklet.shared(any initialValue)

创建共享变量 SharedValue,用于跨线程共享数据和驱动动画。

# DerivedValue worklet.derived(WorkletFunction updaterWorklet)

衍生值 DerivedValue,可基于已有的 SharedValue 生成其它共享变量。

# worklet.cancelAnimation(SharedValue SharedValue)

取消由 SharedValue 驱动的动画。

# function worklet.runOnUI(function fn)

在 UI 线程执行 worklet 函数。

# function worklet.runOnJS(function fn)

worklet 函数运行在 UI 线程时,捕获的外部函数可能为 worklet 类型或普通函数,为了更明显的对其区分,要求必须使用 runOnJS 调回 JS 线程的普通函数。 有这样的要求是因为,调用其它 worklet 函数时是同步调用,但在 UI 线程执行 JS 线程的函数只能是异步,开发者容易混淆,试图同步获取 JS 线程的返回值。

# AnimationObject worklet.timing(number toValue, Object options, function callback)

基于时间的动画。

# AnimationObject worklet.spring(number|string toValue, Object options, function callback)

基于物理的动画。

# AnimationObject worklet.decay(Object options, function callback)

基于滚动衰减的动画。

# AnimationObject worklet.sequence(AnimationObject animationN)

组合动画序列,依次执行传入的动画。

# AnimationObject worklet.repeat(AnimationObject animation, number numberOfReps, boolean reverse, function callback)

重复执行动画。

# AnimationObject worklet.delay(number delayMS, AnimationObject delayedAnimation)

延迟执行动画。

# worklet.scrollViewContext.scrollTo(Object object)

滚动至指定位置