用react实现radio同时关联proform组件

实现:

javascript 复制代码
<ProFormRadio.Group
      radioType={'button'}
      name={['bodyConfig', 'format']}
      label="请求体格式"
      initialValue={'json'}
      options={createTabs}
      fieldProps={{
        buttonStyle: 'solid',
        wrapperMarginInlineEnd: 20,
        onChange: e => {
          let v = e.target.value;
          databaseModalFormRef.current?.setFieldValue('format', v);
        },
      }}
    />

用react.js实现:

javascript 复制代码
const changeItem = (value) => {
    setTab(value);
    databaseModalFormRef.current?.setFieldsValue({ bodyConfig: { format: value } });
  }


<ProFormItem noStyle name={['bodyConfig', 'format']} initialValue={'json'}>
      请求体格式:
      <div className={'request_create_tab_items_json'}>
        <div onClick={e=>{ changeItem('json') }} className={`request_create_tab_item_json ${tab == 'json'?'request_create_tab_item_active_json':''}`}>
          json
        </div>
        <div onClick={e=>{ changeItem('form') }} className={`request_create_tab_item_json ${tab == 'form'?'request_create_tab_item_active_json':''}`}>
          form-data
        </div>
        <div onClick={e=>{ changeItem('text') }} className={`request_create_tab_item_json ${tab == 'text'?'request_create_tab_item_active_json':''}`}>
          text
        </div>
      </div>
    </ProFormItem>

作用:使用组件修改样式复杂,改用react.js来写优化了界面卡顿问题。

思路总结:重点在于使用 setFieldsValue 来更新,这样就能更新 bodyConfig 。

相关推荐
CodexDave9 小时前
MySQL事务隔离级别与MVCC机制解析
前端·数据库·mysql·nginx·性能优化·负载均衡
Ai_easygo10 小时前
AI Agent开发入门——从ReAct到Tool Calling,拆解Agent的底层运行逻辑
前端·人工智能·react.js
研☆香10 小时前
分析制作html页面,如何划分页面结构
前端
kyriewen10 小时前
我扒了最近的前端面经——2026年面试不背八股文了,考这5样
前端·面试·ai编程
IT_陈寒11 小时前
Redis的持久化配置把我坑惨了:你以为数据安全了?
前端·人工智能·后端
小徐_233311 小时前
uni-app 项目别再从零搭了!3 个 Wot UI 起手模板怎么选?
前端·uni-app
张元清11 小时前
React useResizeObserver Hook:追踪元素尺寸变化(2026)
javascript·react.js
赵庆明老师11 小时前
Vben精讲:16-熟悉Vite前端工具链
前端
瑞瑞小同学14 小时前
处理echarts x轴内容过多,重叠问题
前端·javascript·echarts
HexCIer14 小时前
面向未来的原子化 CSS:UnoCSS 核心架构分析与 Tailwind CSS 现状
前端·css·vite