记录一个react+antd中使用数组循环出checkboxgroup的过程

张力控制速度闭环控制算法 这个算法的核心思想是通过比较实际速度和期望速度的差异来调整控制信号,以达到稳定的速度控制。比例项用于直接根据误差调整输出,积分项用于积累误差并进行补偿,微分项用于预测误差的变化趋势并进行调整。张力控制是在许多工程和工业应用中非常重要的一个过程,它涉及到通过调节力的大小来实现稳定的工作状态。通过合理设置比例、积分和微分系数,并结合实际系统的特性进行调试和优化,可以实现准确稳定的张力控制。速度闭环控制算法通过比较实际速度和期望速度之间的差异,并根据差异调整系统的输出,以保持速度稳定。 阅读详情

前段时间项目中遇到一个需求,效果如下图:
在这里插入图片描述
这个红框里面的是通过一个数组渲染出来的,后端给过来的数据格式是一个一维数组:

[{
	title: '意图',
	label: '搭讪',
	value: '1'
}, {
	title: '方向',
	label: '出',
	value: '3’
}, {
	title: '意图',
	label: '搭讪',
	value: '1'
}]

前端需要将数组通过title来升级为二维数组,这样才能map渲染出上面要的效果。不同的title为不同的分组。这个升级的的方法我是这样写得:

const createClssifyOption = (arr) => {
  let result = [];
  let map = new Map();
  for (let i = 0; i < arr.length; i++) {
    if (map.has(arr[i].category)) {
      result[result.length - 1].options.push({
        label: arr[i].labelName,
        value: arr[i].labelId.toString(),
      });
    } else {
      map.set(arr[i].category, 1);
      result.push({
        title: arr[i].category,
        defaultValue: [],
        options: [
          {
            label: arr[i].labelName,
            value: arr[i].labelId.toString(),
          },
        ],
      });
    }
    if (arr[i].checked) {
      result[result.length - 1].defaultValue.push(arr[i].labelId.toString());
    }
  }
  return result;
};

转换之后就拿到了我想要的数据格式,如下:
在这里插入图片描述
注意:defaultValue是为了配合antd的checkboxgroup的API,不清楚可以看官方文档。
通过这个数组渲染出页面没有问题。

设定defaultValue后问题来了:
每次翻页页面显示的都是上一次请求过来的数据,而断点打印显示setState也生效了。
表示很无语,,,但是但是,我用了value之后就可以实现实时显示了,目测是antd的bug。
接下来又有问题了,checkbox的事件如何绑定呢?map出来的只能写一个方法来处理。
苦思冥想之后,方法如下:

结合js中对象更改内存地址不会变的原理,直接更改当前item中的defaultValue

//  v是每次选中的时候当前checkboxgroup的选中值的集合
// i是当前的checkboxgroup的索引
const chooseClassify = (v, i) => {
      this.setState({
        classifyArr: this.state.classifyArr.map((item, index) => {
          console.log(index, i);
          if (index === i) {
            return {
              ...item,
              defaultValue: v,
            };
          }
          return item;
        }),
      });
    };

然后每次保存的时候,将渲染数组中的defaultValue push到一个数组中传给后端就ok了。

问题搞定,,,晚饭加鸡腿!!

YOLOv13改进策略【Neck】| CVPR2024 LGAG:大核分组注意力门模块,3×3分组卷积与注意力协同的特征精准融合 本文记录的是利用LGAG 模块改进 YOLOv13 的颈部融合部分。(Large-kernel Grouped Attention Gate)通过3×3分组卷积与注意力机制结合,引导解码器处理特征与跳接特征的精准融合。本文利用模块,通过3×3分组卷积扩大感受野以捕捉更广泛局部空间上下文,同时结合注意力机制生成自适应注意力系数,对YOLOv13中关键目标特征赋予高激活值、抑制冗余背景特征,在特征融合阶段实现全局语义与局部细节的高效结合,减少计算成本的同时提升特征表达能力,增强模型对复杂场景下目标的检测精度与效 阅读详情

相关推荐

ADS SerDes仿真实战:深入解析Tx_Diff均衡器(EQ)参数对眼图质量的影响

本文以ADS仿真平台为基础,深入解析了SerDes设计中Tx_Diff均衡器(EQ)参数对信号完整性的核心影响。通过实战演示,详细对比了去加重(De-emphasis)与FIR抽头系数两种调节模式,揭示了它们如何有效对抗信道损耗与码间干扰,从而显著改善眼图的高度、宽度与抖动性能,为高速串行链路设计提供关键调优思路。

weixin_29230901的博客 227

vue中使用Checkbox 多选框循环遍历

首先效果展示 步骤如下: 1、html <el-form> <el-form-item v-for="(item, index) in dataList" :key="index"> <el-checkbox @change="(val) => handleCheckAllListChange(val, item)" :indeterminate="itemIndet

weixin_43549979的博客 1万+

Vmware 17保姆级教程:从零部署华为enspPro模拟器(附镜像下载+配置优化)

本文提供了一份详尽的Vmware 17部署华为eNSP Pro模拟器的保姆级教程。内容涵盖从镜像下载、虚拟机导入、网络配置到深度性能调优的全过程,并针对常见启动失败、设备卡顿等故障提供了实用的排查方案,旨在帮助网络工程师和华为认证备考者快速搭建稳定高效的实验环境。

arduino9maker的博客 637

react使用antd中的Checkbox实现多选

react使用antd中的Checkbox实现多选

见贤思齐焉,见不贤内自省 7344

LabVIEW+数据库应用系列保姆级教程,第一篇数据库连接

目录LabVIEW连接数据库的方法连接MySQL连接Oracle,SQL Server,Access等 LabVIEW连接数据库的方法 1、创建udl(Universal Data Link)是通用数据连接文件。界面操作,简单快捷。 2、编写连接字符串。需要熟悉连接字符串的结构,容易出错。 3、其他… 本教程教你使用第1种方法,也是最简单、最常用的方法。 连接MySQL 1、在MySQL Installer内安装MySQL Connector/ODBC,建议安装32位(X86),如下图: 2、创建ODBC

wwplh5520370的博客 1万+

大麦APP抢票协议分析:从‘掌密网络’代码看移动端API安全防护

本文深度解析了大麦APP抢票协议的安全防护体系,重点分析了'掌密网络'代码中体现的动态签名、设备指纹和人机验证等关键技术。文章详细介绍了大麦APP如何通过多层次API安全防护应对抢票压力,包括参数加密、请求头部设计和异常处理机制,为移动应用开发者提供了安全实践建议。

weixin_28740299的博客 292

React + antd 中 的 CheckBox 实现限制复选框可选的个数

React + antd 中 的 CheckBox 实现限制复选框可选的个数 一、React + antd 中 的 CheckBox 实现限制复选框可选的个数 1.优化后的代码 3行 实现: 代码如下(示例): import React, { useState, useEffect } from "react"; import { Checkbox } from "antd-mobile"; // 这里使用的是 antd-mobile,antd本质上原理一样 const CheckboxItem = Che

Ashy- 在这里成长 2880

给爸妈买的红米12C想装个老年桌面?先别急,解锁BL和Root前你得知道这些

本文详细解析了红米12C解锁BL和Root的利弊,为想要为长辈简化手机操作的用户提供全面指南。文章对比了BL解锁与Root的技术差异,推荐优先使用MIUI内置的极简模式等官方功能,并评估了Root的实际必要性。若必须Root,提供了安全操作流程和长期维护建议,帮助用户做出明智选择。

weixin_30265103的博客 318

循环多组checkbox-group

使用场景 因项目需求,采用动态数据展示每组多选,所以循环多组checkbox-group进行实现! 1.页面代码 <el-form-item v-for="(item, topIndex) in cities" :key="topIndex" class="checkBox-item"> <el-checkbox class="textCheck" :disabled="dialo

weixin_43153138的博客 4695

UDS自动化测试-Service 0x27(CAPL调用dll实现key计算)

相信读者基于Diagnostic/ISO TP Confighration中cdd、dll文件的测试并不陌生,本文基于其的基础上,介绍在capl中调用内置的函数diagGenerateKeyFromSeed实现27服务解锁,从而进行诊断自动化测试。本文基于4个byte的Seed、16个byte的Key的安全访问,实现27服务的自动化测试。需要加载项目使用的cdd文件,如果没有的情况下可以使用canoe例程中默认的cdd文件。

诊断协议那些事儿's blog 2054

故障排查:OpenClaw 更新后 feishu 插件路径失效的解决方法

OpenClaw 更新后 feishu 插件路径失效的解决方法发现问题→ Gateway 启动失败,报插件路径错误定位原因→ OpenClaw 目录结构变化,→解决问题→ 更新为正确的路径验证修复→ 使用确认一切正常。

刘一说的IT专栏 1306

antd checkbox 实现多组全选遍历

import React from 'react'; import { Checkbox, Divider } from 'antd'; import { useState } from 'react'; const CheckboxGroup = Checkbox.Group; const defaultCheckedList = []; export default () => { const [checkedList, setCheckedList] = React.useState(de

m0_46441816的博客 2123

【DaVinci Developer专题】-23-IDT高阶应用:结构体类型的数组

共8页 目录 1 创建一个Record IDT 2 创建一个Array IDT 3 创建一个S/R Port Interface 4 创建一个Constant 5 导入CFG生成代码的总结 6 结尾 <--返回「实战篇」博文-总目录--> <--返回「Autosar从入门到精通-实战篇」专栏主页--> 关键字: 缩略语/术语 含义 DEV DaVinci Developer .

「汽车电子助手」的博客 1670

ReactHooks+Antd Checkbox Group多选框组单独禁用其中选项

antd官方文档中Checkbox Group给出的api如下: 据图可知,其中Group 的 api 只有一个disabled,它的作用是使整个group选项全部失效,达不到我们的效果,但是Checkbox中却有api disabled 可以使选项单独失效。 所以,可以 Checkbox 和 Checkbox Group 结合使用,实现方式如下: 具体需求 举例: 当select==='yinpin'时,只存在yinpin时,前两个禁用 当select不包括yinpin时,后两个禁用 实现 tip:

Erya Programming learning 3041

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

android中怎么保存checkbox中的checked属性_TS中使用hooks绑定antd组件(例:checkbox与checkboxgroup实现全选关联)

这篇文章是综合了ts+react16+hooks+antd的搬砖技术提升篇,对提升原理剖析能力及技术覆盖面的扩充非常有益。微信前端核心500人群:群内不定期会有赞助商送书活动,BAT大厂资深大牛定期推送面经与源码分析,各平台大牛优秀文章推荐,更有内推跳槽咨询、视频资源共享、学习资料文章pdf面经网盘资源等等福利。加入我们一起进步。为了解决知乎活码识别问题,下方的二维码做了持久化处理。扫描二维码添加...

weixin_39779975的博客 286

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

React 组件化开发完全指南:从设计原则到性能优化实战

摘要: 本文系统性地探讨了React组件化开发的核心方法论,从组件设计、Hooks规范、状态管理到性能优化、设计模式与测试体系,构建了一套完整的开发实践框架。 核心内容导览 组件设计原则:单一职责、类型划分(展示/容器/高阶组件等)、拆分策略(结构分析→复用识别→抽象提取)及命名规范。 Hooks深度解析:常用Hooks(如useEffect、useMemo)的使用场景与陷阱,自定义Hook的设计规范与逻辑复用技巧。 状态管理选型:对比Context API、Zustand、Redux Toolkit的适用

热爱技术与前沿创新,深耕科技领域,在科创中精进自我;探索技术乐趣,分享技术干货与成长心得,以技术为伴,热爱生活,在科创与生活中双向成长。 184

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

vue中循环多组checkbox-group

1.因为官网给出的checkbox group绑定的数据格式是数组,而在项目中接收的数据通常是对象数组,我这里label绑定的是数组中对象的id属性,点击获取的是id的数组,在最后提交数据时需要做处理。2.一开始也尝试了label绑定整个对象,这样获取到的直接便是最终需要的对象数组,展示和添加是可以实现的,但是回显遇到了问题,在网上看是回显的数据格式要与选中的数组中对象的格式一致,尝试了没有效果,后面再研究一下。

m0_57442975的博客 9242

vue for 循环element ui 多选按钮组 el-checkbox-group ,单选按钮el-radio-group,输入框el-input,绑定值重复问题

前言:最近在做项目,有个做题的需求,分别有单选题,多选题,问答题,三种题型。因为题的数量不确定,所以肯定是for 循环每一道题,完了之后发现有问题; 问题: for循环之后,就会发现,这三种组件(el-checkbox-group,el-radio-group,el-input)以下简称组件。都是只绑定一个变量,来获取当前的值,所以for循环之后绑定的值是一样的,导致出现bug;例如下面的v...

qq_40247562的博客 9198

react获取循环出来的复选框的值

简单代码 import React, { Component } from "react"; import { Checkbox } from "semantic-ui-react"; import { getlistStaff } from "../action/registerAction"; import { connect } from "react-redux"; import "re...

前端小白成长记 4047

react改变checkbox的文字类型_react 怎么控制循环输出的checkbox复选框的checked属性?...

请问 react 中怎么控制循环输出的 checkbox 的 checked 属性?定义state状态的时候该怎么定义?我目前是在state中定义了一个空数组 checked, 然后在 componentWillMount 和 componentWillReceiveProps 中根据循环的个数对数组 checked 进行了赋值,用于循环控制 dom 中的 checkbox,代码如下:constr...

weixin_39967405的博客 775

antd的checkbox和h5标签的checkbox获取值

antd checkbox const handleDownChange=(checkedValues)=>{ console.log(checkedValues) if(checkedValues.length){ setLineType(pre=> true ) }else{ setLineType(pre=>false) } } <Checkbox.Group d..

qq_36048987的博客 2235

【React 】基于Antd Design的RadioGroup按钮组控件封装

一、简介 基于项目中大量使用到需要动态查询数据库,然后动态渲染RadioGroup组件,于是对Radio.Group进行了封装,主要有以下几点功能: 【a】通过配置数据源标识,结合后端接口,可以动态查询出需要的单选按钮组数据出来,约定以'DMK_'加上对应代码库标识,如: sign={'DMK_WJCF_WJLX'},简单理解就是对应数据库中的查询标志; 【b】支持自定义数据源Options...

weixiaohuai的博客 6940

react经验8:使用antd的checkbox实现全选与半选控制

列表项部分选中时,checkall处于半选状态,点击checkall要么全选,要么全不选

Comvir的专栏 1395

react antd 多组checkbox复选框组实现全选,单选

antd 多组checkbox复选框

qq_45758147的博客 1252

【React 】基于Antd Design的CheckBox多选框组件封装

一、简介 基于项目需求,对Ant Design中CheckBox复选框组件进行了二次封装,主要有以下一些功能: 【a】可直接使用数据库常量表的标识,使用sign标识从后台查询数据源时,以'DMK_'加上对应代码库标识,如:sign={'DMK_XTGL_WJLX'}; 【b】支持自定义数据源,需要遵循一定的格式,如: [{label: 'A', value: 'A'},{label: 'B'...

weixiaohuai的博客 7892

react antd checkbox实现全选,多选

antd checkbox实现全选,多选

坚强的泡沫的博客 4530
上一篇: 记录一个eslint配置问题
下一篇: 在antd tree组件基础上封装一个文件目录树
jacoby_fire
博客等级 码龄10年 231粉丝 32原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值