React Native将Component / Object属性传递给OnPress函数

时间:2017-11-23 22:19:47

标签: javascript reactjs react-native ecmascript-6 draggable

刚开始学习React Native并遇到一些基本问题。 我正在使用React-native-draggable组件,我想使用元素的位置来更新当前场景的状态。

<Draggable renderColor='white' offsetX={0} renderSize={48} reverse={false} pressDragRelease={PASS X,Y POSITION TO A FUNCTION HERE?}>

对于我的生活,我无法让它发挥作用;我真的只想获取已发布的Draggable元素的x和y位置,并在this.setState(...)中使用它。我试过绑定,但我真的是一个完全的初学者,甚至不知道现在在哪里看。任何指针都将非常感激。

1 个答案:

答案 0 :(得分:2)

目前无法做到这一点。通过快速查看模块源代码,您可以看到here在没有任何参数的情况下调用pressDragRelease函数。

onPanResponderRelease: (e, gestureState) => {
    if(pressDragRelease)
        pressDragRelease();
[...]

我们想要的是从gestureState获取x和y。 我们可以将onPanResponderRelease参数传递给pressDragRelease

onPanResponderRelease: (e, gestureState) => {
    if(pressDragRelease)
        pressDragRelease(e, gestureState);
[...]

随意分叉并提交拉取请求!

<强>更新

我在这里做了一个公关:https://github.com/tongyy/react-native-draggable/pull/7

更新2

PR已经合并,并且该模块的新版本发布到npm!

npm install react-native-draggable@1.0.8