javascript - React Native : this. touchableHandleResponderGrant 不是函数

标签 javascript react-native drag pan

我正在尝试使用React Native PanResponder来实现一个简单的拖动功能。 。我看了this tutorial但我正在做一个更简单的事情,它只会改变拖动时的状态变量。

componentWillMount() {
    this._panResponder = PanResponder.create({
        onMoveShouldSetResponderCapture: () => true,
        onMoveShouldSetPanResponderCapture: () => true,
        onPanResponderGrant: (e, gestureState) => {
            //this.setState({pan: 0});
            console.log('grant');
        },

        onPanResponderMove: (e, gestureState) => {
        //this.setState({pan: gestureState.dx});
        console.log(gestureState);
        },
        onPanResponderRelease: (e, {vx, vy}) => {
        }

    });
    console.log('pan init');
}

在我的渲染函数中我有这个:

<Text {...this._panResponder.panHandlers}>Drag here</Text>

但是一旦我平移/拖动,我就会得到一个带有错误的红框:

this.touchableHandleResponderGrant is not a function

我做错了什么?

最佳答案

我猜 panHandlers 属性只能与 ViewAnimated.View 组件一起使用。

<View {...this._panResponder.panHandlers}>
  <Text>Drag here</Text>
</View>

<Animated.View {...this._panResponder.panHandlers}>
  <Text>Drag here</Text>
</Animated.View>

关于javascript - React Native : this. touchableHandleResponderGrant 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40118621/

相关文章:

javascript - (新日期 ('2012-12-01' )).getMonth() === 10?

.net - 如何在VB.NET中跟踪鼠标单击和拖动事件?

java - jsp中的考试类型问题

javascript - 多个 Canvas 层和鼠标移动

react-native - 我可以使用 prop nativeID 在 native 代码中定位 View 吗

android - Gradle Sync在AS中失败:找不到com.android.tools.build:gradle:4.0.0

angular - 移动和网络的单一代码库

macos - NSDragOperation通用含义

ios - 是否可以有一个可以拖动或选择的点注释 View ?

javascript - 如何使用 JavaScript/jQuery 解释文本区域中的字符串?