解决列表重复/回显问题

解决列表重复/回显问题

methods: {
    awemeChange (item, checked) {
      let obj = {}
      obj.aweme_id = item.aweme_id
      obj.author_name = item.author_name
      obj.cover_num_str = item.cover_num_str
      // 用于临时存储已选列表
      let awemeAuthorMessage = JSON.parse(JSON.stringify(this.expertKeyWordsList))
      let isN = []
      // 如果已选列表不为空
      if (awemeAuthorMessage.length !== 0) {
      // 遍历已选列表
        for (let k = 0; k < awemeAuthorMessage.length; k++) {
          // 判断当前选中与已选中是否出现重复项
          if (item.aweme_id === awemeAuthorMessage[k].aweme_id) {
            console.log(awemeAuthorMessage[k].aweme_id, '重复出现~')
            isN.push(false)
            // 右侧已选框
            for (let n = 0; n < this.expertKeyWordsList.length; n++) {
              if (this.expertKeyWordsList[n].aweme_id === awemeAuthorMessage[k].aweme_id) {
                // 左侧多选框的值
                for (let c = 0; c < this.checkAwemeList.length; c++) {
                  if (this.checkAwemeList[c].aweme_id === awemeAuthorMessage[k].aweme_id) {
                    this.checkAwemeList.splice(c, 1)
                  }
                }
                console.log(this.expertKeyWordsList[n].aweme_id === awemeAuthorMessage[k].aweme_id, '重复----------出现~')
                // 删除重复项 并 return
                return this.expertKeyWordsList.splice(n, 1)
              }
            }
          } else {
            isN.push(true)
          }
        }
        if (isN.indexOf(true) !== -1) {
          this.expertKeyWordsList.push(obj)
          this.checkAwemeList.push(item)
        }
      } else {
        // this.awemeListOptions 为添加 列表
        for (let s = 0; s < this.awemeListOptions.length; s++) {
          if (this.awemeListOptions[s].label_id === item.label_id) {
            this.checkAwemeList.push(this.awemeListOptions[s])
          }
        }
        this.expertKeyWordsList.push(obj)
        this.addexpert = 'second'
      }
      // 使用 es6 数组去重方法
      this.ruleForm.aweme_fan_accounts = [...new Set(this.ruleForm.aweme_fan_accounts)]
    },
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值