如题。
我在自定义组件的methods中的一个方法中编写了一段timing
this._x.value = wx.worklet.timing(targetX, {
duration: 300,
}, (res) => {
'worklet'
console.log('res', res)
wx.worklet.runOnJS(that.showDialogContent.bind(that))()
})
运行结果是
[ui] res true
2[ui] Javascript worklet error
app-bar/components/dev-log/dev-log.ts (108:11):1: TypeError: Cannot read property 'bind' of undefined
TypeError: Cannot read property 'bind' of undefined
at Object._f (app-bar/components/dev-log/dev-log.ts (108:11):1:116)
at MutableValue.workletValueSetter (src/worklet/core.ts (128:0):1:585)(env: Windows,mp,1.06.2403282; lib: 3.4.0)
很神奇,不知道是什么原因导致无法调用。
看错误提示是 this 指向的问题,找不到 showDialogContent 方法
建议在自定义组件的生命周期 created 或者 attached 中进行 bind