我正在使用库material-ui,我有一个GridList
GridTile
,可以响应两个不同的触摸事件:触摸平铺应让用户导航到另一条路线和'actionIcon'的触摸应该为它加注星标。我在GridTile和IconButton上定义了onTouchTap,它作为动作图标传递给了tile本身,如下所示:
<GridTile
onTouchTap={(e) => {
onTileTouch(id)
}}
key={id}
title={'...'}
subtitle={'...'}
actionIcon={<IconButton onTouchTap={
addToFavourites(id)
}/>}>
<img src={'...'} />
</GridTile>
但我得到的是GridTile消耗的每个touchTap事件。我怎样才能实现我的需要?
答案 0 :(得分:3)
我认为这可以工作 - 你可以在GridList中包含一个onClick事件而不是onTouchTap,然后处理IconButton中的onTouchTap事件。它应该单独调用它们
<GridList onClick={ (e) => {
onTileTouch(id)
}}
<GridTile
key={id}
title={'...'}
subtitle={'...'}
actionIcon={<IconButton onTouchTap={
addToFavourites(id)
}/>}>
<img src={'...'} />
</GridTile>
</GridList