html - 如何在 ReactJS 中动态选择要渲染的元素
问题描述
我正在编写一个网页,它动态地呈现数据库中的元素,每个元素都有自己的状态。要选择渲染什么元素,我使用了switch-case
这样的:
switch (this.state.type) {
case 'textarea':
element = <textarea {...this.state} />
break
...
default:
element = <input {...this.state} />
}
我想做的是有一种很好的方式来选择渲染哪个元素,如下所示:
switch (this.state.type) {
case 'textarea':
tag = 'textarea'
break
...
default:
tag = 'input'
}
element = <{tag} {...this.state} />
在 React 中有没有类似的方法?
解决方案
您可以使用React.createElement
[1],其第一个参数是要渲染的元素。
推荐阅读
- android - Audiotoggle cordova插件在android 9中不起作用
- python-3.x - 为什么第一个python递归程序不起作用?
- http - HTTP 代理可以处理通过 HTTP/2 请求的入站 CONNECT 吗?
- ruby-on-rails - 为什么 ruby 应用程序视频无法在 iphone 上预览
- laravel - 带有 API 令牌的 Laravel 自定义表
- kubernetes - PV文件未保存在主机上
- python - 用 a[:,None] 重塑 numpy 数组
- python - 如何让我的 python 代码计算效率更高
- asp.net-core - Signalr .net core 2.2 - 发送到非连接组的消息
- c# - 以非常特定的顺序构造字符串列表