加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

数据增删改查,最基本也是最麻烦的.

发布时间:2020-12-15 06:40:38 所属栏目:百科 来源:网络整理
导读:这是一个看起来非常简单的功能, 点击项目名称,WBS编码相应的会变,这两个是联动的,选了wbs编码后,材料库和历史订单会出来,这些都比较简单,通过this.setState便可轻松实现点击材料库后,会有另外一个模态框,如下: 选择之后,点击添加数据便到了第一个图中的需求

这是一个看起来非常简单的功能,

点击项目名称,WBS编码相应的会变,这两个是联动的,选了wbs编码后,材料库和历史订单会出来,这些都比较简单,通过this.setState便可轻松实现点击材料库后,会有另外一个模态框,如下:

选择之后,点击添加数据便到了第一个图中的需求列表中,我个人认为较难的一点,并且在比较难想到的一个bug问题:数量输入后,在点击page切换后无法拿到上一页面的数量,咱们需要做的便是在切换当前页面后,把当前页面的数据保存到state中,在点保存的时候重新获取保存,看起来是挺简单的,如果没有专业的测试,这些隐藏的bug,还是较难发现.代码如下:

wbsSelectPageChange(page,size) {
  let t = this;
  console.log(page,size);
  let paramsAll = this.props.form.getFieldsValue();
  let data = t.state.wbsTableDataSure;//需求列表数据
  let uniqueData = data.slice((this.state.infoCurrentPage - 1) * this.state.infoPageSize,(this.state.infoCurrentPage) * this.state.infoPageSize);
  console.log(uniqueData);
  let realyArray = this.state.realyArraySure;
  uniqueData.forEach((item,index) => {
    let obj = {};
    obj[pruchaseTableHeader.materialId] = item[pruchaseTableHeader.order];
    obj[pruchaseTableHeader.needsNum] = paramsAll[item.id];
    realyArray.push(obj);
  });
  this.setState({
    realyArraySure: realyArray,infoCurrentPage: page,infoPageSize: size
  })
}

page页面切换的函数.

上图因为涉及公司相关信息,所以都涂了.

只为激励自己!以后代码的完整性

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读