给定一个反应类名称数组,我想使用该类名创建一个组件。
我试过了:
React.createElement(name);
但是得到了一个带有名字的HTML元素(例如:<MyReactClass/>
),但不是我需要的实际反应组件。
答案 0 :(得分:3)
您需要将名称映射到实际的类,如@Felix Kling所述。有几种方法可以做到这一点。一种方式:
var classes = {
"name1": require('./Class1'),
"name2": require('./Class2'),
...
};
...
React.createElement(classes[name]);