社区首页 >问答首页 >如何使用React.CreateElement()从数组动态生成<select>的菜单选项

如何使用React.CreateElement()从数组动态生成<select>的菜单选项
EN

Stack Overflow用户
提问于 2021-07-16 02:58:09
回答 2查看 61关注 0票数 1

下面是手动生成选项的代码。有没有办法从数组或json动态填充选项?

代码语言:javascript
代码运行次数:0
复制
    return React.createElement("select", {},
      React.createElement("option", {value: "A"}, "Option A"),
      React.createElement("option", {value: "B"}, "Option B"),
      React.createElement("option", {value: "C"}, "Option C")
    );
  }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-07-16 03:00:49

我强烈建议编译JSX,并且您可以很容易地使用.map,其中回调将返回一个组件:

代码语言:javascript
代码运行次数:0
复制
const values = ['A', 'B', 'C'];
// ...
return (
  <select>
    {values.map(val => <option value={val}>{val}</option>)}
  </select>
);

如果您不能使用JSX (尽管您确实应该使用它,因为它使语法更容易),那么您可以将结果扩展到createElement中。

代码语言:javascript
代码运行次数:0
复制
return React.createElement("select", {},
  ...values.map(value => React.createElement("option", { value }, value))
);
票数 1
EN

Stack Overflow用户

发布于 2021-07-16 05:44:50

代码语言:javascript
代码运行次数:0
复制
const values = ['A', 'B', 'C'];
// ...
return (
  <select>
    {values.map((val, i) => <option key={i} value={val}>{val}</option>)}
  </select>
);

别忘了添加关键道具,因为React会抱怨它

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68402885

复制
相关文章
VC动态生成菜单菜单响应及加速键的使用
    本文讲解的使用环境为MFC 的Visual Studio项目的单文档应用程序类型,字符集使用多字节字符集,对话框和多文档应用程序类型稍有不同这里不再讲解说明。
用户3519280
2023/07/06
3260
使用 Python Selenium 提取动态生成下拉选项
在进行网络数据采集和数据分析时,处理动态生成的下拉菜单是一个常见的挑战。Selenium是一个强大的Python库,可以让你自动化浏览器操作,比如从动态生成的下拉菜单中选择选项。这是一个常见的网页爬虫和数据收集者面临的挑战,但是Selenium让它变得简单。
jackcode
2023/06/07
1.2K0
使用 Python Selenium 提取动态生成下拉选项
Python中如何动态生成多维数组
多维数组其实就是多个一维数组的嵌套,Python中有原生的list,类似一个动态数组。 所以动态生成多维数组的思想就是在list中动态嵌套添加list。
卡尔曼和玻尔兹曼谁曼
2019/01/22
3K0
Python中如何动态生成多维数组
vue 点击菜单动态生成Tab
UI 组件采用element  NavMenu点击左侧的菜单列表生成Tab,如下图
tianyawhl
2020/02/20
4.3K2
如何高效的从数组数据生成树状层级数组?
任何无限极分类都会涉及到创建一个树状层级数组。从顶级分类递归查找子分类,最终构建一个树状数组。如果分类数据是一个数组配置文件,且子类父类id没有明确的大小关系。那么我们如何高效的从一个二维数组中构建我们所需要的树状结构呢。
写PHP的老王
2019/08/12
2.6K0
如何高效的从数组数据生成树状层级数组?
Vue 动态添加路由及生成菜单
不同角色有不同的权限,这时如果管理平台的菜单定义在代码里,显然是不能满足上面的需求,我们就需要后台提供用户菜单,然后前台动态生成路由。
青年码农
2021/01/05
2.6K0
Vue 动态添加路由及生成菜单
写后台管理系统,估计有不少人遇过这样的需求:根据后台数据动态添加路由和菜单。 为什么这么做呢?因为不同的用户有不同的权限,能访问的页面是不一样的。 在网上找了好多资料,终于想到了解决办法。
谭光志
2020/09/28
3.7K0
如何清除右键菜单里的图形属性图形选项
2.保存文件。名字改为abc.cmd然后运行该文件就行了、出现提示点击确定。看看图标一点要变成这样。然后双击运行。就行了。
Lcry
2022/11/29
7970
javascript动态设置select下拉菜单字体大小
本章节分享一段极其简单的代码实例,它使用javascript实现了动态设置select下拉菜单字体大小的功能。
IT工作者
2021/12/28
1.5K0
jenkins动态读取文件生成下拉菜单
其实实现这个功能是基于Jenkins的Active Choices Reactive Parameter插件和groovy脚本实现,另外还需要配合选项参数(Choice Parameter)``<br />
dogfei
2020/07/31
2.9K0
laravel-admin select、multipleSelect从api中获取选项列表
select、multipleSelect从api中获取选项列表 $form->select($column[, $label])->options([1 => 'foo', 2 => 'bar', 'val' => 'Option name']); 或者从api中获取选项列表: $form->select($column[, $label])->options('/api/users'); 其中api接口的格式必须为下面格式: [ { "id": 9, "tex
友儿
2022/09/11
3.8K0
EasyUI之生成动态异步菜单栏
  在项目开发中,对于整体的页面布局中对于菜单导航栏我们一般设计为根据不同的用户权限展示不同的菜单选项,同时菜单显示也会做异步加载处理。本文就来介绍下基于EasyUI的tree插件来实现导航栏的异步加载实现。
用户4919348
2019/05/15
2K0
EasyUI之生成动态异步菜单栏
Android-SubMenu选项菜单和子菜单
简介: SubMenu:代表一个子菜单,包含1~N个MenuItem 实现效果: 具体实现方法: 主活动 MainActivity: public class MainActivity extends AppCompatActivity { //定义 “字体大小” 菜单项的标识 final int FONT_10 = 0x111; final int FONT_12 = 0x112; final int FONT_14 = 0x113; final int FON
圆号本昊
2021/09/24
1.3K0
Android-SubMenu选项菜单和子菜单
使用 Spring Boot 从数据库实现动态下拉菜单
动态下拉菜单(或依赖下拉菜单)的概念对于编码来说是令人兴奋且具有挑战性的。动态下拉列表意味着一个下拉列表中的值取决于前一个下拉列表中选择的值。一个简单的示例是三个下拉框,显示区、taluk 和村庄的名称,其中 taluk 中的值取决于区中选择的值,村庄中的值取决于 taluk 下拉列表中选择的值。动态下拉可以使用以下技术来实现:
用户1418987
2023/10/26
1.1K0
使用 Spring Boot 从数据库实现动态下拉菜单
关于WebDriver中下拉框选项操作 ---- >>Select类的使用:
在UI测试的过程中,我们经常会遇到对下拉框的处理, 笔者在日常的维护中, 对下拉框的处理的太多, 各种好定位的不好定位的, 这里可以分享两种定位方法:
呆呆
2021/05/18
1.2K0
Vue3动态添加路由及生成菜单
最近在尝试用Vue3开发个管理平台项目,一切都是从头开始,基本框架搭建,熟悉Vue3写法,编写登录页,编写路由守卫,上面功能已基本完成,开始编写首页布局,用Vue3就必须用Router4.x版本,所以之前的代码迁移过来之后发现,动态路由不生效,查了很多资料,最后发现,Router4中,去掉了 router.addRoutes ,只能使用 addRoute
青年码农
2021/01/18
16.6K8
Vue3动态添加路由及生成菜单
如何实现动态数组
1.使用指针~~ 2.自己申请内存 例如:如第一块的代码,若想实现一个动态数组,必须写成二的部分,用完之后必须给free(); 必须加上头文件#include<malloc.h> 常用格式:
杨鹏伟
2020/09/11
8840
点击加载更多

相似问题

从<select>数组动态替换JavaScript上的选项

25

如何使用JavaScript动态插入PHP“生成”选项(html select)?

11

使用变量从select菜单获取选项值

12

dojo select set value不使用动态生成的选项

11

如何动态生成jQuery以使用C#填充<select>的选项

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档