【发布时间】:2019-09-11 19:27:31
【问题描述】:
我正在尝试使用 React Material UI 动态添加扩展面板。它已添加,但我无法展开它(即isExpanded 是真的,即使面板没有展开)。我在 Material UI 版本 4.4.1 和 React.js 版本是 16.9.0。谁能帮我弄清楚为什么它不能按预期工作?
const TransportFlow = () => {
const [expanded, setExpanded] = React.useState('');
const [points, setPoints] = React.useState([]);
const handleChange = panel => (evt, isExpanded) => {
setExpanded(isExpanded ? panel : false);
};
const addPoint = () => {
const arr = [];
const pointPanel = (
<ExpansionPanel key='p1' expanded={expanded === 'panel1'} onChange={handleChange('panel1')}>
<ExpansionPanelSummary expandIcon={<ExpandMoreIcon />} id="panel1bh-header" aria-controls="panel1bh-content">
Hello
</ExpansionPanelSummary>
<ExpansionPanelDetails>
<Typography>Some more text</Typography>
</ExpansionPanelDetails>
</ExpansionPanel>
);
arr.push(pointPanel);
setPoints([...arr]);
}
return (
<div className="flow">
{points.map((point) => point)}
<button className="add-waypoint" onClick={() => addPoint()}>Add</button>
</div>
); }
代码沙箱链接:link
【问题讨论】:
标签: reactjs material-ui