JavaScript 数组之every,判断数组中是否包含某个元素

列表中的状态有四种: 待下发  待市级审核 待更换单位  已下发

需求是: 只有状态为(待下发和待更换单位),才可以下发

因为下发是可以多选也可以单选,所以我们需要对单选和多选状态下进行判断,这里需要用到数组中的 every 方法 (测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值,当你需要判断数组中是够符合多个的话,就可以用 || 来判断,例: item.issueStateValue == '待下发' || item.issueStateValue == '待更换接收单位')

// 这里需要说一下, every 方法有一个回调 
// 当你用箭头函数的时候
// 正确案例:
const arr = this.multipleSelection.every(item=> item.issueStateValue == '待下发' || item.issueStateValue == '待更换接收单位')
// 错误案例: 
const arr = this.multipleSelection.every(item => {
    item.issueStateValue == '待下发' || item.issueStateValue == '待更换接收单位'
}) 如果加上 {} 的话,你就需要 return 出去,否则无效
//下发
    issue() {
      if (this.multipleSelection.length == 0) {
          this.$message.warning("请选择需要操作的数据");
          return;
      }
      if(this.multipleSelection.length == 1){ // 单选
          if(this.multipleSelection[0].issueStateValue == '待下发' || this.multipleSelection[0].issueStateValue == '待更换接收单位'){
              this.issueDailog = true
          }else{
              this.$message.warning("选择的数据包含已下发的数据,无法下发");
              this.issueDailog = false
          }
      }else if(this.multipleSelection.length > 1){ // 多选
          const arr = this.multipleSelection.every(item=> item.issueStateValue == '待下发' || item.issueStateValue == '待更换接收单位')
          if(arr){
              this.issueDailog = true
          }else {
              this.$message.warning("选择的数据包含已下发的数据,无法下发");
              this.issueDailog = false
          }
      }
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开发那点事儿~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值