Nombre de componente dinámico React / JSX

Estoy tratando de representar dinámicamente componentes en función de su tipo.

Por ejemplo:

var type = "Example";
var ComponentName = type + "Component";
return <ComponentName />; 
// Returns <examplecomponent />  instead of <ExampleComponent />

Probé la solución propuesta aquíNombres de componentes dinámicos React / JSX

Eso me dio un error al compilar (usando browserify para tragar). Esperaba XML donde estaba usando una sintaxis de matriz.

Podría resolver esto creando un método para cada componente:

newExampleComponent() {
    return <ExampleComponent />;
}

newComponent(type) {
    return this["new" + type + "Component"]();
}

Pero eso significaría un nuevo método para cada componente que creo. Debe haber una solución más elegante para este problema.

Estoy muy abierto a sugerencias.

Respuestas a la pregunta(8)

Su respuesta a la pregunta