如何给react-native art中的component添加事件?
如下面代码所示,假如我想用Shape封装成一个Rect,那么如何给Rect添加相应的onPress事件呢?
PS: 不是给最外面一层容器套一个Touchablexxx,而是给Shape这类react-native art中的component添加事件。(试了PanResponder,好像也不行。。。)
const teset = () => {
const teseRects = [
{x: 0, y: 0, width: 40, height: 40},
{x: 60, y: 0, width: 40, height: 40},
{x: 60, y: 60, width: 40, height: 40},
{x: 0, y: 60, width: 40, height: 40},
];
return (
<Surface>
{teseRects.map((item, index) => {
return (
<Rect
{...item}
fill={'red'}
onPress={() => {alert(index)}}
/>
);
})}
</Surface>
);
}
const Rect = (props) => {
const {x, y, width, height, fill, onPress} = props;
const path = new Path()
.moveTo(x, y)
.lineTo(x + width, y)
.lineTo(x + width, y+ height)
.lineTo(x, y + height)
.close();
return <Shape d={path} fill={fill}/>;
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论