我在手風琴中有一個表格 - 我想要做的是在提交表格時折疊手風琴。
<Accordion elevation={3}>
<AccordionSummary expandIcon={<ExpandMoreIcon />} aria-controls="panel1a-content" id="panel1a-header">
</AccordionSummary>
<AccordionDetails>
<form onSubmit={onSubmit}>
</form>
</AccordionDetails>
</Accordion>
const onSubmit = e => {
e.preventDefault();
firebase
.firestore()
.collection("meals")
.add({
Name : name,
})
//.then will reset the form to nothing
.then(() => setName("");
};
理想情況下,在 firebase 添加的 .then 中,我會從那里折疊手風琴。
uj5u.com熱心網友回復:
克里特島一個“擴展”布爾狀態變數并將其系結到手風琴的擴展道具https://mui.com/api/accordion/
然后,在“then”回呼中將此狀態變數設定為 false。
uj5u.com熱心網友回復:
您可以在提交表單時設定手風琴的擴展道具。
const [expanded, setExpanded] = React.useState(true);
<Accordion expanded={expanded} > </Accordion>
提交表單時,必須將 prop 設定為 false
const submit = () => {
// ...
setExpanded(false);
}
根據您的需要,這是使您完成作業的示例:
沙箱上的代碼示例在這里
所以這里的重點是使用與每個手風琴不同的字串(面板名稱)呼叫相同的函式handleChange。
希望這對你有幫助。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/365791.html
