reactjs - 如何在 React js 中使用数组将数组推送到对象中?
问题描述
我有一个问题,
我有一个选择控制组件,它有选项,在选项内我通过映射数组添加选项数组staticPosts
。
我的代码:
<SelectControl
label={__("Choose Static Block Page to show above header", "pirezmeta")}
onChange={ (value) => props.onChangeStaticContent(value) }
options={props.staticPosts && props.staticPosts.map(post =>
({value: post.id, label: post.title}))}
value={props.staticContent}
/>
一切都很好,除了我想先添加空选项,比如:{value: 0, label: "No value"}
我该怎么做,你能帮帮我吗?
解决方案
那个道具发生了很多事情。我将分别声明上面的数组 - 包括第一{value: 0, label: "No value"}
项,然后添加其他映射项:
const options = [
{value: 0, label: "No value"},
...props.staticPosts?.map(
post => ({value: post.id, label: post.title})
)
];
// ...
<SelectControl
label={__("Choose Static Block Page to show above header", "pirezmeta")}
onChange={ (value) => props.onChangeStaticContent(value) }
options={props.staticPosts && options}
value={props.staticContent}
/>
您还可以在挂载或道具更改时将组合数组置于状态。
推荐阅读
- jenkins - Jenkins 脚本化管道 - 在阶段之间传递工件的多次执行
- facebook - 在 facebook ads api 中获取时间范围内的数据
- asp.net - Web 方法未在 ajax aspx Web 表单中调用
- jdbc - JDBC 类型真的很重要吗?
- c++ - 使用前导零进行字符串化
- python - 是否有可能通过`map_fn()`获得更高维度的张量?
- python - 重塑数据框的结构
- html - 多行使用 Tailwind CSS 时带有复选框的居中标签
- java - 如何在 Vaadin 14 中清理/删除 AppLayout 中的内容?
- inno-setup - Inno Setup 语言文件 (isl) 中的完整预处理器支持