首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >物料UI - stepper中的按钮

物料UI - stepper中的按钮
EN

Stack Overflow用户
提问于 2020-03-31 23:59:25
回答 1查看 500关注 0票数 0

我想有一个可点击的元素从Material UI的stepper的一步。元素应该始终可见,而不仅仅是当步骤处于活动状态时才可见。由于UX原因,无法将所有步骤设置为活动。

这是我尝试过的:

代码语言:javascript
复制
<Step key={x.id}>
    <StepButton completed={false} onClick={() => xxx()}>
        {title}
    </StepButton>
    <div style={{ display: "flex", justifyContent: "center" }}>
        <IconButton onClick={(e) => show()}>
            <InfoIcon />
        </IconButton>
    </div>
</Step>

但是似乎在一个步骤中有一个div是不允许的。我在div的行中收到错误(例如,Warning:接收到活动的非布尔属性的true。)

然后我试着把图标放在StepButton标签里:

代码语言:javascript
复制
<Step key={x.id}>
    <StepButton completed={false} onClick={() => xxx()}>
        {title}
        <IconButton onClick={(e) => show()}>
            <InfoIcon />
        </IconButton>
    </StepButton>
</Step>

但这也是不可能的,因为按钮中的按钮是不允许的。

有没有其他方法可以在一个步骤中使用可点击元素(如IconButton)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-01 00:18:07

您可以在StepLabel中放置一个按钮:

代码语言:javascript
复制
import { Step, StepLabel, StepContent, Button } from "@material-ui/core";

如下所示:

代码语言:javascript
复制
<Step key={x.id}>
    <StepLabel
        onClick={() => handleStep(x.id)}
        completed={completed}
    >
        {title}
        <Button
            onClick={(e)=>{
            console.log("Button Pressed")}
            }
        >
            {"Button"}
        </Button>
    </StepLabel>
    <StepContent>
        {"Content hidden when not active"}
    </StepContent>
</Step>

如果要阻止按钮打开步骤,可以添加e.stopPropagation()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60954801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档