基于EasyCVR视频平台开发的视频直播管理平台EasyCVS如何调整已绑定流状态的勾选?

之前TSINGSEE青犀视频基于EasyCVR视频融合平台开发了一套新的管理平台系统EasyCVS,EasyCVS的流分配模块中,对于已分配的流需要显示已经勾选状态。

el-Table的组件系统的@selete 事件即在勾选某一行时,根据回调的两个信息,我们可以判断改变某一行勾选状态时是勾选还是取消勾选。若是勾选,则先判断改行id是否已存储在checked的数组中;若是取消勾选,则删除checked的数组中的改行id。

但是在此处需要注意两个要点:

1、当初次打开弹框时,需要自动勾选上所有已绑定的流,即调用Table的togleRowSelection 方法将后台返回的数据勾选上;
2、在分页功能切换分页时,需要再次调用Table的togleRowSelection 方法将数据勾选。

参考代码如下:

    // checkData获取
    getCheckData(data, type) {
      if (type == "add") {
        let index = this.checkData.indexOf(data.id);
        if (index == -1) {
          this.checkData.push(data.id);
        }
      } else {
        let index = this.checkData.indexOf(data.id);
        if (index != -1) {
          this.checkData.splice(index, 1);
        }
      }
      console.log("勾选数据", this.checkData);
    },
    //勾选
    toggleSelection() {
      console.log("数据勾选", this.checkData);
      this.$nextTick(() => {
        this.checkData.forEach((row) => {
          this.liveListData.forEach((item) => {
            console.log(row, item.id);
            if (item.id == row) {
              console.log("匹配成功");
              this.$refs.liveListTable.toggleRowSelection(item, true);
            }
            return;
          });
        });
      });
    },
原文地址:https://www.cnblogs.com/TSINGSEE/p/14340776.html