2015-11-30 4 views
1

Учитывая массив имен классов реагирования, я хочу создать компонент, используя это имя класса.Вставить компонент реакции динамически, используя имя класса

Я пробовал:

React.createElement(name); 

Но получил HTML-элемент с именем (например: <MyReactClass/>), но не фактический реагировать компонент, который является то, что мне нужно.

+2

Вы должны решить это имя для фактического класса. Вы можете сделать это, построив карту «имя -> класс» и найдите класс. –

ответ

3

Вам необходимо сопоставить имена с фактическими классами, например, как @Felix Kling. Это несколько способов сделать это. Один такой способ:

var classes = { 
    "name1": require('./Class1'), 
    "name2": require('./Class2'), 
    ... 
}; 

... 
React.createElement(classes[name]); 
Смежные вопросы