• 状态码与watch——表格筛选功能


    1.状态码版本

    依据四个筛选条件,分为1111 1110 ... 0000,共17种状态(本代码不完整,未写全,自己意会的)

    function toNum(v) {
            if (v) {
              return 1;
            } else {
              return 0;
            }
          }
          this.sCode =
            toNum(tDate) +
            "" +
            toNum(tName) +
            "" +
            toNum(tDep) +
            "" +
            toNum(tState);
          console.log("sCode", this.sCode);
    
          this.tempData = [];
          const newDate = this.tableData.filter((key) => {
            switch (this.sCode) {
              case "1111":
                if (
                  key.date == tDate &&
                  key.name == tName &&
                  key.department == tDep &&
                  key.statement == tState
                ) {
                  console.log("1111");
                  this.tempData.push(key);
                }
                break;
              case "1110":
                if (
                  key.date == tDate &&
                  key.name == tName &&
                  key.department == tDep
                ) {
                  console.log("1110");
                  this.tempData.push(key);
                }
                break;
    
              default:
                break;
            }
          });
    

      这种版本写起来很麻烦,不过顶用哈哈哈

    2.watch版本,之前一直有个误区,没有及时保存上次筛选后的结果,导致只能1次筛选,现在可以重复筛选了。

    不过还是有BUG,如果进行了错误的筛选,需要清除筛选后再重新筛选

    inputName() {
          let temp = [];
          let tName = this.inputName;
    
          if (tName) {
            const newData = this.tempData.map((key) => {
              if (key.name == tName) {
                console.log("filter one");
                temp.push(key);
              }
            });
            this.tempData = temp;
          }
        },
    

      

    人生到处知何似,应似飞鸿踏雪泥。
  • 相关阅读:
    ssh 命令
    mtr 命令
    ping 命令
    curl 命令
    echo 命令
    cp 命令
    sftp服务器配置
    tomcat性能优化
    消息队列
    深度学习
  • 原文地址:https://www.cnblogs.com/lepanyou/p/15075615.html
Copyright © 2020-2023  润新知