React / JSX Dynamic Component Name
2022-08-30 00:22:54
我正在尝试根据组件的类型动态呈现组件。
例如:
var type = "Example";
var ComponentName = type + "Component";
return <ComponentName />;
// Returns <examplecomponent /> instead of <ExampleComponent />
我尝试了这里提出的解决方案 React/JSX 动态组件名称
这在编译时给了我一个错误(使用 browserify for gulp)。它期望XML在我使用数组语法的地方。
我可以通过为每个组件创建一个方法来解决这个问题:
newExampleComponent() {
return <ExampleComponent />;
}
newComponent(type) {
return this["new" + type + "Component"]();
}
但这意味着我创建的每个组件都有一个新的方法。这个问题必须有一个更优雅的解决方案。
我对建议持非常开放的态度。