在React中动态添加组件需要使用React.
cr
eateElement()
函数
来创建元素并将其渲染到页面上。具体步骤如下:
创建一个state来存储要动态添加的组件。组件可以在数组中以对象的形式存储,每个对象包含组件的名称和props。
创建一个
函数
,使用map()方法遍历数组并返回动态创建的组件。
在render()
函数
中调用上述
函数
,并将返回的组件添加到页面中。
代码示例:
import React, { Component } from 'react';
class App extends Component {
state = {
components: [
{ name: "ComponentOne", props: { text: "Component One" } },
{ name: "ComponentTwo", props: { text: "Component Two" } },
{ name: "ComponentThree", props: { text: "Component Three" } }
renderComponents = () => {
return this.state.components.map(({ name, props }, index) => {
const ComponentName = require(`./components/${name}`).default;
return <ComponentName key={index} {...props} />
render() {
return (
{this.renderComponents()}
export default App;
在此示例中,我们可以在组件的状态中存储要动态添加的组件,然后在renderComponents函数中动态创建每个组件并将其呈现在页面上。在这里,我们还使用require()动态地导入每个组件。每个组件都有一个独特的键,以使React能够正确地标识它们。