当前位置: 首页 > news >正文

珠海图远建设公司网站wordpress调用内容前多少字

珠海图远建设公司网站,wordpress调用内容前多少字,抖音小程序免费制作平台,南昌官网seoform 数组中嵌套数值更新 注意:数组是引用类型 项目需求,表单中包含多个产品信息,使用form.list 数组嵌套,提货方式如果是邮寄展示地址,如果是自提,需要在该条目中增加两项 代码如下:// An hi…

form 数组中嵌套数值更新

注意:数组是引用类型

在这里插入图片描述
项目需求,表单中包含多个产品信息,使用form.list 数组嵌套,提货方式如果是邮寄展示地址,如果是自提,需要在该条目中增加两项

代码如下:
// An highlighted block
<Card title="产品信息" bordered={false}><Form.List name="productList" >{(fields, {add, remove}) => (<>{fields.map((field,index) => (<Row  gutter={16} >{/* 用得时候只需要修改下面,将需要重复展示的部分替换下面部分即可 注意 -----start*/ }<Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="库存组织"name={[field.name,"kuCun"]}rules={[{required: true,message: '请选择',},]}><Select><Select.Option value="u238475">u238475</Select.Option><Select.Option value="u238472">u238472</Select.Option></Select></Form.Item></Col><Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="产品线"name={[field.name,"chanPin"]}rules={[{required: true,message: '请输入',},]}><Select><Select.Option value="you1">CTM-产品1</Select.Option><Select.Option value="zi1">CTM-产品2</Select.Option></Select></Form.Item></Col><Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="产品名称"name={[field.name,"wuMiao"]}rules={[{required: true,message: '请输入',},]}><Input placeholder="请输入" /></Form.Item></Col><Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="提货方式"name={[field.name,"tType"]}rules={[{required: true,message: '请输入',},]}><Select><Select.Option value="you">邮寄</Select.Option><Select.Option value="zi">自提</Select.Option></Select></Form.Item></Col><Form.Item noStyle  shouldUpdate={(pre,cur) => {//    如果删除一条信息,cur.productList[index]是空值,所以需要判断if(cur.productList[index]&&pre.productList[index]){// 判断当前是自提还是邮寄return pre.productList[index].tType !== cur.productList[index].tType}else{return false}}}>{({getFieldValue}) =>{const type = getFieldValue('productList'){/* 当前是自提的时候需要填写自提人信息 */}if(type[index].tType&&type[index].tType=='zi'){return <><Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="自提人姓名"name={[field.name,"tName"]}rules={[{required: true,message: '请输入',},]}><Input placeholder="请输入" /></Form.Item></Col><Col sm={24} md={12} lg={8} xxl={6}><Form.Item {...field}label="身份证号"name={[field.name,"tShen"]}rules={[{required: true,message: '请输入',},]}><Input placeholder="请输入" /></Form.Item></Col></>}else{{/* 有一个问题,当切换回邮寄。之前填写的自提人和身份证号删除(只需要将type数组中的数据清空即可,不需要再特意给form赋值,他们是引用类型) */}Object.assign(type[index],{tName:'',tShen:''})return <></>}}}</Form.Item>{ /* 用得时候只需要修改下面,将需要重复展示的部分替换下面部分即可 -----end*/ }<div styleName="item_btn_wrap"><PlusCircleFilled styleName="add_item_btn" onClick={() => add({tType:'zi'})} />{fields.length>1&&<CloseCircleFilled  styleName="remove_item_btn" onClick={() => remove(field.name)} />}</div></Row>))}</>)}</Form.List></Card>
**关键点解释**1. shouldUpdate 是依赖当前form中的变化。所以在其中加上判断,pre是之前 cur是当前,然后根据数组嵌套找到当前值变化就返回true,就会走下面的代码2. Form.Item noStyle 是没有样式的,不需要添加{...field} 不是其中一项3. getFieldValue 获取当前的form值,根据值来展示

问题 在切换不展示时,之前填写的值不清空,所以重点来了
数组是引用类型
数组是引用类型
数组是引用类型

之前一直解决不了,还想用setFomValue来解决,根本不用,因为数组是引用类型,所以直接操作原来的数组值就可以

// An highlighted block
Object.assign(type[index],{tName:'',tShen:''})
http://www.yayakq.cn/news/411314/

相关文章:

  • 建设的招标网站东莞新感染一例阳性
  • 网站开发毕业设计书锦州北京网站建设
  • 网址大全123手机版下载网站优化合同
  • 上海 建设工程质量监督站网站wordpress quform
  • 企业网站导航代码免费生成短链接
  • 江苏住房建设厅主办网站龙岩招聘求职网站有哪些
  • 自建站工具网站友链交换平台
  • 个人网站开发协议维护网站一年多少钱
  • 网站的模板演示怎么做桂林论坛网站有哪些
  • 南沙规划建设局网站上饶专业做网站建设
  • 国内专业做悬赏的网站郑州做网站hnqfu
  • 快速做效果图的网站叫什么软件国家住房部和城乡建设部 网站
  • 钦州做网站的公司做导购网站赚钱
  • 微网站开发建设建设电视台微信网站必要性
  • 中国二级建造师网官网杭州网站优化公司
  • 成都哪家做网站公司好静态网站教程
  • 粉色大气妇科医院网站源码天翼云 安装wordpress
  • 门户网站的门户思维有什么特点装修网站建设方案百度文库
  • 四川和城乡建设厅网站谷歌网站建设
  • 网站维护的页面阿里巴巴网站分类导航做全屏
  • 网站建设电销话术范文网页小游戏在线玩无需登录
  • 好孩子官方网站王建设网站怎样做wap端
  • 网站做的好的门户和网站的区别
  • 有经验的佛山网站建设网站如何做映射
  • 拍卖网站功能需求文档烟台 做网站的公司
  • 在那些网站可以接兼职做任丘市做网站
  • wordpress公众号同步宁波核心关键词seo收费
  • 企业备案网站可以做论坛吗百度的宣传视频广告
  • 昆明做网站游戏工作室加盟
  • 淄博网站制作公司推广企业建站业务还能做吗