展开手风琴摘要时如何更改图标?

时间:2020-09-01 15:47:02

标签: reactjs typescript material-ui accordion

我想根据手风琴是否展开来更改图标。

我在CSS的.ui扩展的实质性ui页面上看到了该页面,可以看到expand = {true}还是false,但是当expand为true或false时,如何使用它来设置其他图标。

因此,我想在expand为true时设置IconA,而在expand为false时设置IconB。

expandIcon={<IconA/>}

1 个答案:

答案 0 :(得分:4)

您可以使用expandIcon组件可用的AccordionSummary道具。设置条件如下:expandIcon={expanded === 'panel1'?<ExpandMoreIcon />:<Minimize/>}

<Accordion expanded={expanded === 'panel1'} onChange={handleChange('panel1')}>
    <AccordionSummary
      expandIcon={expanded === 'panel1'?<ExpandMoreIcon />:<Minimize/>}
      aria-controls="panel1bh-content"
      id="panel1bh-header"
    >
      <Typography className={classes.heading}>General settings</Typography>
      <Typography className={classes.secondaryHeading}>I am an accordion</Typography>
    </AccordionSummary>
    <AccordionDetails>
      <Typography>
        Nulla facilisi. Phasellus sollicitudin nulla et quam mattis feugiat. Aliquam eget
        maximus est, id dignissim quam.
      </Typography>
    </AccordionDetails>
  </Accordion>

此示例代码摘自文档:https://material-ui.com/components/accordion/#controlled-accordion