【发布时间】:2019-02-15 19:07:42
【问题描述】:
我有一个项目列表(动态创建),每个项目都有各自的删除按钮。我试图在点击时禁用单个按钮。我可以使用 disabled prop 和 setState 来禁用单个按钮。但是,这可能不适合我当前动态创建列表项的用例。如果使用 setState 方法,我可能需要为创建的每个项目创建额外的状态。
感谢您的建议。
编辑: 我想生成一个包含 N 个项目的列表,每个项目都有一个删除操作按钮。并且,每个删除按钮在第一次点击处理后应该被禁用(防止双击)。
如前所述,在按钮上使用 'disabled={condition}' 可能不是一个好主意。这是因为列表是动态创建的,其中包含 N 个项目。如果使用方法('disabled={condition}'),我需要有 N 个状态变量来跟踪每个删除按钮。
<List>
{ items.map( item =>
<ListItem>
<ListItemText
primary="Single-line item"
secondary={secondary ? 'Secondary text' : null}
/>
<ListItemSecondaryAction>
<IconButton aria-label="Delete">
<DeleteIcon />
</IconButton>
</ListItemSecondaryAction>
</ListItem>
)
}
</List>
【问题讨论】:
-
您好,您可以显示一些代码,否则将很难提供帮助...
-
这很模糊,但您可以尝试类似 disabled={condition ?真:假}
-
@RicardoCosta,甚至
disabled={condition} -
@t3__rry,感谢您的回复。我编辑了我的问题。
标签: reactjs material-ui