我遇到了JavaScript的问题,不确定该如何解决。
在我的React Native应用程序中,我有一个panResponder,并使用这个钩子来调用Animated.event。
this.panResponder = PanResponder.create({
/* ... some other methods ... */
onPanResponderMove: Animated.event([null, { dx: this.state.x, dy: this.state.y }]),
});
虽然我希望钩子是一个匿名函数,以便能够做一些其他的事情。我尝试了几种不同的方法来使用匿名函数,但我无法使其工作。
this.panResponder = PanResponder.create({
/* ... some other methods ... */
onPanResponderMove: (event, gestureState) => {
this.callSomething();
return Animated.event([null, { /* I'm not sure what to pass here to map with gestureState... */ }]);
},
});
我已阅读文档,但即使如此我仍然不知道。
你能帮我出出主意吗?
谢谢。
更新:
最后我终于做出了类似的东西:
let valueY;
this.panResponder = PanResponder.create({
/* ... some other methods ... */
onPanResponderGrant: () => {
valueY = this.state.y._value;
},
onPanResponderMove: (event, gestureState) => {
this.callSomething();
let panY = valueY + gestureState.dy;
this.state.y.setValue({ y: panY });
},
});
虽然我不认为那是最好的方法...