我正在学习反应,并尝试基于material-ui创建简单的TODO,我在处理IconMenu菜单操作时遇到问题,菜单显示在listItem元素中。此时我不知道在菜单中单击删除操作时如何触发具有项名称的deleteItem函数作为参数。React + MaterialUi在IconMenu和ListItem中处理操作
const iconButtonElement = (
<IconButton touch={true} tooltip="More" tooltipPosition="bottom-left">
<MoreVertIcon color="black"/>
</IconButton>
);
const rightIconMenu = (
<IconMenu iconButtonElement={iconButtonElement}>
<MenuItem value="done" leftIcon={<Done />}>Mark as done</MenuItem>
<MenuItem value="delete" leftIcon={<Delete />}>Delete</MenuItem>
</IconMenu>
);
class TodoElements extends Component {
deleteItem(nameProp)
{
this.props.delete(nameProp);
}
render() {
var listItemRender = function(item) {
return <ListItem key={item.name} primaryText={item.name} style={listItemStyle} rightIconButton={rightIconMenu}/>
};
listItemRender = listItemRender.bind(this);
return (
<List>
{this.props.items.map(listItemRender)}
</List>
)
}
}
谢谢,它的工作原理。我会阅读有关Redux的信息:) –