every ,some , if判断的配合使用(多条件状态判断)

every ,some , if判断的配合使用

项目中我们往往会遇到那列表的状态或者表头的状态进行判断的情况。如果单独判断一个比较好处理,但是就是有时候会返回多个状态,并且在多选的时候要根据多个状态进行判断,此时我们依旧用every 或者some来判断,只不过在此基础上加一个if条件就OK。

假设需求明细行有多条数据,且每个数据的状态都不一样,1,2,3,4,5 这5种状态。
我们需要判断当选中的状态满足为 1,或2,或3 的时候执行一个操作,否则就给出错误提示。

思路: 首先我们先判断每一项。,在去拿每一项做比较
给个实例校验
在这里插入图片描述

用every的方法

 handleSubmitQuote = async (selectedRowKeys, rows1, type) => {
    await this.tableData.quitEditState();
    const rows = this.tableData.getSelectionData().selectedRows;
    console.log(rows, '选中的数据');
    const isAllReview = rows.every((row) => {
      if (
        row.lineStatus === 'NOT_QUOTE' ||
        row.lineStatus === 'QUOTED' ||
        row.lineStatus === 'OFFERED'
      ) {
        return true;
      }
    });
    if (!isAllReview) {
      ElNotification({
        type: 'error',
        message: '请选择单据状态为[未报价 或 已报价 或 已出价] 的选项'
      });
    } else {
      const params = this.buttonParams(rows);
      this.setState({ loading: true });
      const res = await submitBaojia(params);
      this.setState({ loading: false });
      await this.handleRequestResult(res, type);
    }
  };

用some的方法

在这里插入图片描述
判断相反也是一样的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值