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

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

点击项目名称,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页面切换的函数.

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Material Design组件

Human Interface Guidelines — Custom Keyboards

1273
来自专栏Java技术分享

XML语言基本介绍

怎么解释呢,拿我们平时熟悉的HTML语言来说,HTML就是一种规定了特定标签的语言,而XML语言则没有规定特定的标签(可能有一些基本的?目前我还没有学习到,以后...

1856
来自专栏北京马哥教育

Linux 新手必会的21条命令合集

1547
来自专栏小文博客

抓取全站图片的几个思路

好久没更新文章,最近确实忙,今天抽点时间写写我最近忙着优化网站图片的事。由于本站使用的图床SM.MS,近期不少使用电信和联通运营商的朋友说图片加载慢,网站加载完...

1602
来自专栏jeremy的技术点滴

使用grunt对css中的background图片自动生成雪碧图

35510
来自专栏我就是马云飞

APK瘦身全面总结——如何从32.6M到13.6M

前言 之前我简单介绍了关于svg图片瘦身的问题,在公司,瘦身这个问题是我提出来的,所以这锅我背了。公司项目是32.6M,我给自己的要求就是低于20M。上周花了一...

1846
来自专栏大数据文摘

手把手 | 范例+代码:一文带你上手Python网页抓取神器BeautifulSoup库

1783
来自专栏腾讯云安全的专栏

你熟悉的Android Root 方式有哪些?|附演示视频

2115
来自专栏24K纯开源

MacOS平台下@rpath在动态链接库中的应用

一、背景介绍       公司开发的一个底层库被用在了Mac平台的多个产品中。在开发这个底层库的初期,对于Mac OSX下的Install name 并没有过多...

25710
来自专栏北京马哥教育

手把手教你从无到有写一个运维APP

? 由于自己现在无业游民,所以没有什么现成的环境,环境就随便找个公网的。再者当下的完成度应该算不上一个完整的 APP,但是作为参考,依瓢画葫芦绝对足够了,如果...

3526

扫码关注云+社区