实习日记2(与form表单的爱恨情仇1)

xml 复制代码
<>
  <Form.Item
  >
    <Switch />
  </Form.Item>
 
  {isEnabled &&  (
    <Form.Item label=' ' colon={false}>
      <Form.Item>
     ...
      </Form.Item>
    </Form.Item>
  )}
</>

这是我在写代码的时候遇到的一个布局问题,花了我几十分钟解决,希望以后遇到就能长记性了; 我想实现的效果是这样的:

于是我自然而然的就让ai项快速帮我解决这个问题,没想到适得其反,同样,在ai给的圈子里面不跳出去反而项越来越复杂的方式去解决,我感觉这更加耗费心神和精力,更重要的是,好像我自己都会跟着变笨!!

因为表单里面的东西有很多值,然后为了保证美观性,它们之间的间隔应该是一样的,就是为了这个间隔!ai很愚蠢的使用两个表单嵌套!仅仅是为了让它占位!用一个label占位,再嵌套一个,现在我回想起来,后面的布局问题都是因为这个圈子造成的!回想起来,就算占位也可以直接使用一个表单的label而不是这种方式,因为嵌套item还会自动带有下边距样式,以至于原本我想要的是上面这样,现在则变成了这样:

所以,现在从一个问题,就变成了多个问题要解决!!!但是当时的我走到了ai的固定路线,根本没有想过,所以,我就想办法去解决多个问题:

当显示绿色的时候,红色的下边距要比不显示的时候近一点,同时,显示绿色的时候要解决和黑色表单的间距过大的问题,于是,我就几个样式加条件解决了,丝毫没有发现写了一坨💩:

xml 复制代码
  <Form.Item
    style={{ marginBottom: isEnabled ? 8 : 16 }}
  >
    <Switch />
  </Form.Item>

  {isEnabled  && (
    <Form.Item label=' ' colon={false}>
      <Form.Item
        style={{ marginBottom: 0 }}
      >
       ...
      </Form.Item>
    </Form.Item>
  )}

直到mt给我cr代码。。。下面是我们的对话:

mt:你为什么要写两个表单项嵌套

我:因为要缩进一个字符

mt:你都写表单了,读取为什么还要专门get

我:因为我多写了个表单项嵌套,读取不到原来的了

mt:你这怎么写这么多样式

我:因为我多写了个表单项

mt:就为了解决缩进,你造成了这么多麻烦,为什么不想着去解决缩进呢?你这治标不治本啊

我:对啊(连滚带爬的跑去改代码)

于是,在mt的点拨下,我把代码改成了这样:

xml 复制代码
<Form.Item > 
<Switch /> 
</Form.Item>

<Form.Item label=' ' colon={false} >
        ...
</Form.Item>

中途发现:表单项读取不了初始值是因为没有加valuePropName='checked'

valuePropName='checked' 是Ant Design Form.Item组件的一个重要属性,用于指定表单字段值的属性名。

具体作用: 告诉Form.Item组件,表单字段的值应该绑定到子组件的 checked 属性上,而不是默认的 value 属性

之后就完美的解决啦!!!

其实这是一个很简单的情况,但是也反映了一个问题,如果只是一味的靠ai而不自己去思考,真的会变得无脑;同时我由于大部分时间用ai,已经很久没有手写了,很多组件api都忘了,导致一些明明很简单的api调用,却要拐弯抹角的另寻他路,还有就是之前走过的坑没有记录,让一些事情重复一遍又一遍!!

还有更多的因为用ai写的事故,后续记录,坚决不重复踩坑~

相关推荐
岛风风2 小时前
分享一下Monorepo 的理解和不同类型项目的目录结构
前端
ITMan彪叔2 小时前
Tesseract OCR 页面分割模式解析
前端
w_y_fan2 小时前
Flutter中的沉浸式模式设置
前端·flutter
游荡de蝌蚪2 小时前
快速打造Vue后台管理系统
前端·javascript·vue.js
code_YuJun2 小时前
3. 修改 vue.config.js 配置完成打包分析和优化
前端
文心快码BaiduComate2 小时前
轻松实践:用Python实现“名字大作战”游戏,表白Zulu!
前端·后端·微信小程序
神毓逍遥kang3 小时前
最近学习rust,然后使用rust构建你的前端cli工具助力前端生态
前端
1024小神3 小时前
Android冷启动和热启动以及温启动都是什么意思
前端
June_liu4 小时前
列太多vxe-table自动启用横向虚拟滚动引起的bug
前端·javascript