У меня проблема с javascript, и я не уверен, как ее разрешить.Передайте анонимную функцию onPanResponderMove
В моем приложении React Native у меня есть panResponder, и я использую этот hook для вызова 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... */ }]);
},
});
Я прочитал документацию, но даже с этим я до сих пор не знаю.
Можете ли вы мне помочь?
Спасибо.
Update:
Я наконец-то сделал что-то вроде этого:
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 });
},
});
Я не думаю, что это лучший способ сделать это, хотя ...
Что именно проблема? Синтаксис второй версии выглядит отлично. Есть ли реальная ошибка? Вызывается функция? «не может заставить его работать» слишком расплывчато. – rooftop
Синтаксис просто не работает без каких-либо ошибок, когда я пытаюсь переместить его, просто больше не движется – alexmngn