2 回答

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊
查看此實(shí)現(xiàn)?;旧希枰褂?useState React Hook 來存儲要添加為畫布子級的所有組件。
export default function App() {
const [buttonsOnCanvos, setButtonsOnCanvos] = useState([]);
return (
<div className="App">
<Button
event={() => {
setButtonsOnCanvos([...buttonsOnCanvos, <Button />]);
}}
/>
<div className="canvos">{buttonsOnCanvos}</div>
</div>
);
}

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
您不需要直接訪問 DOM。您可以有一個(gè)狀態(tài)來指示是否顯示元素。然后,有條件地在 div 中呈現(xiàn) 。.canvos<Button />
export default function App() {
const [showCanvos, setShowCanvos] = useState(false);
const addToCanvos = () => {
setShowCanvos(true)
};
return (
<div className="App">
<Button event={addToCanvos} />
<div className="canvos">
{showCanvos && <Button />}
</div>
</div>
);
}
請注意,我將該函數(shù)移到了組件中。addToCanvosApp
添加回答
舉報(bào)