CONTEXT
我正在尝试基于事件 (例如 onClick 事件) 动态将 React 组件添加到 DIV / 另一个 React 组件中。
我已经尝试并知道可以通过 JS 创建 createElement 并将其附加到 DIV 中来添加任何 HTML 元素。但是,我想要添加 React 组件到 DIV 中。
问题:
当我将 React 组件添加到 DIV 中时,它会添加 [object Object]。我正在寻找一种方法来能够渲染并插入 React 组件到 DIV 中。
这里是 CodeSandBox 的代码:https://codesandbox.io/s/frosty-bouman-f95mx?file=/src/App.js
import React from "react";
import "./styles.css";
import Button from "./Button";
const addToCanvos = () => {
var canvos = document.querySelector(".canvos");
canvos.append(<Button />);
};
export default function App() {
return (
<div className="App">
<Button event={addToCanvos} />
<div className="canvos" />
</div>
);
}
setButtonsOnCanvos([...buttonsOnCanvos, <Component1 />, <Component2 />]);
如果你想移除项目,请将数组设置为空:setButtonsOnCanvos([])
- undefined