创建元素我看到很多人在创造一个路由映射阵营本土类似于下面:反应过来本地用绳子
if (route.id === 'Blah') {
return (<Blah prop1={this.method} prop2={this.other method} />);
} else if (route.id === 'OtherView') {
return (<OtherView prop1={this.method} />);
}
这很快会成为很多行代码,我想这样做这样的:
return (React.createElement(route.id, {propsToPass}));
这不起作用在本地做出反应显然是为“字符串不允许作为第一个参数本地做出反应,因为这些是为了用于HTML标签规则做出反应。”
那么这怎么做呢?如果我将ReactClass作为第一个参数提供,或者使用eval(route.id)(但我知道这可能很危险),我就可以使用它了。
如何使用字符串创建React Native元素?
似乎并非是一个有效的JS。 –
如果您在第一个代码片段中的条件中讨论JSX组件,那是因为它没有被编译成JS,这是React的工作方式 –