lim*_*dev 9 javascript react-native
我有 2 个嵌套的Touchables,我想onPress在外层Touchable和内层中捕获事件Touchable,但只有内层会触发onPress事件,所以我们可以说该事件不会传播到父元素
我正在使用 React-Native 0.57
这是我的零食示例。
我也在这里重新发布我的渲染代码:
<TouchableOpacity onPress={() => alert('outer')}
style={{ backgroundColor: 'red', width: 200, height: 200 }}>
<TouchableOpacity onPress={() => alert('inner')}
style={{ backgroundColor: 'green', width: 100, height: 100 }}
/>
</TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)
显示了如何只看到内部警报或外部警报。
相反,我想显示按下绿色视图的外部和内部警报...
代码是一个简化版本,在真实情况下,innerTouchable是一个可以在各种场景中使用的组件,要么在 a 内部Touchable,要么在非 Touchable 组件中
rom*_*n21 -2
如果您想在触发一个处理程序时调用另一个TouchableOpacity处理程序,只需从被触发的处理程序onPress中调用它即可。onPress
<TouchableOpacity onPress={myHandler}
style={{ backgroundColor: 'red', width: 200, height: 200 }}>
<TouchableOpacity onPress={myOtherHandler}
style={{ backgroundColor: 'green', width: 100, height: 100 }}
/>
</TouchableOpacity>
Run Code Online (Sandbox Code Playgroud)
如果由最里面的'smyOtherHandler调用,您可以这样调用:TouchableOpacityonPressmyHandler
cost myOtherHandler = () => {
myHandler();
// ...other stuff
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1506 次 |
| 最近记录: |