小工具知识网

当前位置: 首页 > 行业知识 > elementUI - 折叠以及多选的组件

行业知识

elementUI - 折叠以及多选的组件

2026-11-12 12:19:52 来源:互联网转载
//子组件                                                          {{ item.textName }}              {{item.name}}({{item.numData}}个)                                                                      {{ itemVal.stationName }}              {{itemVal.stationType==1?'手工':"自动"}}                                                  expindex.php/tags-1038.html" >ort default {  components: {},  props: {    leftSelectMoreArr: {      type: Array,      default: () => [],    },  },  data() {    return {      checkList: [],      activeNames: [],      differentData: [],      isFlag: false,      stationType: "",      numberVal1: 0,      numberVal2: 0,      numberVal3: 0,    };  },  created() {    if (this.leftSelectMoreArr.length > 0) {      this.activeNames = [this.leftSelectMoreArr[0].nameNumber];      if (this.leftSelectMoreArr[0].stationArr.length > 0) {        this.leftSelectMoreArr[0].stationArr.forEach((ele) => {          this.checkList.push(ele.stationLabel);        });        this.stationType = this.leftSelectMoreArr[0].nameNumber;      }    }    this.$emit("getTreeVal", this.checkList, this.stationType);  },  watch: {    checkList(newVal, oldVal) {      this.differentData = this.getDifferentData(newVal, oldVal);      let length1 = newVal.length;      let length2 = oldVal.length;      if (length1 > length2) {        this.isFlag = true; //说明是新增      } else {        this.isFlag = false; //说明是减少      }      // this.$emit("getTreeVal", this.checkList, this.stationType);    },    stationType(newVal, oldVal) {},  },  mounted() {},  methods: {    handleChange(val) {},    handleCheckedCitiesChange(val) {      this.$emit("getTreeVal", this.checkList, this.stationType);    },    //判断是否打开    judgeActive(data) {      return this.activeNames.indexOf(data);    },    // 获取两个数组中不同的值    getDifferentData(arr1, arr2) {      return arr1.concat(arr2).filter(function (v, i, arr) {        return arr.indexOf(v) === arr.lastIndexOf(v);      });    },    // 数组去重    removeDuplicates(array) {      return [...new Set(array)];    },    // 比较两个数组是否有相同数据,有的话则去掉    removeCommonElements(arr1, arr2) {      return arr1.filter(        (item) => !arr2.some((otherItem) => otherItem === item)      );    },  },};    .left-second-more {  .layer-list-wrapper1 {    height: calc(100% - 22px);    width: 100%;    border-radius: 4px;    background-color: #fff;    // overflow: auto;    margin-top: 10px;    display: flex;    flex-direction: column;    .el-collapse {      width: 100%;      border: 0;      color: #4b4b4b;      //   overflow: auto;      .el-collapse-item {        margin-bottom: 12px;      }      .el-collapse-item__header {        width: 100%;        height: 60px;        background: #f8f9ff;        border-bottom: none;        justify-content: space-between;        align-items: center;        border-radius: 4px;        padding: 0 16px;        .el-collapse-item__arrow {          display: none;        }        .left-title {          display: flex;          align-items: center;          .left-icon {            width: 26px;            height: 26px;            line-height: 26px;            text-align: center;            border-radius: 500000px;            background: #e1e6f0;            color: #303133;            font-size: 14px;            margin-right: 12px;          }          .left-name {            color: #303133;            font-weight: 700;          }        }        .iconfont {          font-size: 10px;        }      }      .el-collapse-item__header:hover {        background: #3886ff;        border-radius: 4px;        .left-title {          .left-icon {            border-radius: 4px;            background: #fff;            color: #0064ff;          }          .left-name {            color: #fff;            font-weight: 700;          }        }        .iconfont {          color: #fff;        }      }      .is-active {        background: #3886ff !important;        border-radius: 4px;        .left-title {          .left-icon {            border-radius: 4px;            background: #fff;            color: #0064ff;          }          .left-name {            color: #fff;            font-weight: 700;          }        }        .iconfont {          color: #fff;          transform: rotate(90deg);        }      }      .el-collapse-item__content {        padding: 2px 16px;        border-left: 1px solid #e1e6f0;        border-right: 1px solid #e1e6f0;        border-bottom: 1px solid #e1e6f0;        border-bottom-left-radius: 4px;        border-bottom-right-radius: 4px;        margin-bottom: 12px;      }      .el-collapse-item:last-child {        .el-collapse-item__wrap {          border: 0;          .el-collapse-item__content {            margin-bottom: 0px;          }        }      }    }    /* 设置滚动条的样式 */    .el-collapse::-webkit-scrollbar {      width: 0px;      height: 0;    }    .el-checkbox-group {      .el-checkbox {        width: 100%;        display: flex;        justify-content: space-between;        align-items: center;        margin: 16px 0;        .el-checkbox__input {          height: 14px;                 }        .el-checkbox__input.is-checked + .el-checkbox__label {          color: #3886ff;        }        .el-checkbox__label {          width: 100%;          display: flex;          align-items: center;          padding: 0;          //   margin-bottom: 24px;          color: #606266;          line-height: 14px;          margin-left: 12px;          img {            width: 20px;            // height: 20px;            margin-right: 8px;          }          .check-handwork {            width: 44px;            height: 24px;            line-height: 24px;            text-align: center;            display: block;            margin-left: auto;            border-radius: 4px;            background: #3886ff1a;            border: 1px solid #3886ff;            color: #3886ff;          }          .check-auto {            width: 44px;            height: 24px;            line-height: 24px;            text-align: center;            display: block;            margin-left: auto;            border-radius: 4px;            background: #70c4221a;            border: 1px solid #70c422;            color: #70c422;          }        }        // .el-checkbox__label:hover{        //   color: #3886ff;        // }      }      .el-checkbox:hover{        .el-checkbox__input{          .el-checkbox__inner{            border-color: #3886ff;          }        }        .el-checkbox__label{          color: #3886ff;        }      }      .el-checkbox:last-child {        .el-checkbox__label {          margin-bottom: 0px;        }      }    }  }}.layer-list-wrapper1::-webkit-scrollbar {  display: none;}.el-checkbox {  line-height: 27px;}
//父组件  import leftSelectMore from "@/components/leftSelect/leftSelectMore.vue";components: { leftSelectMore },data() {    return {    leftSelectMoreArr: [        {          name: "省控断面",          numData: "1",          nameNumber: 1,          stationArr: [            {              stationName: "桥1",              stationLabel: 1,              stationType: 1, //1是手工,2是自动            },            {              stationName: "桥2",              stationLabel: 2,              stationType: 2, //1是手工,2是自动            },          ],        },        {          name: "市控断面",          numData: "1",          nameNumber: 2,          stationArr: [            {              stationName: "桥3",              stationLabel: 3,              stationType: 1, //1是手工,2是自动            },            {              stationName: "桥4",              stationLabel: 4,              stationType: 2, //1是手工,2是自动            },          ],        },      ],       leftSelectMoreFlag: true,    }},methods: {    // 点击了左侧的哪一个选项    getSingleVal(val, stationType) {    console.log("选中的")    }}

上一篇:揭秘Plesk,助力业务腾飞的一站式解决方案!

下一篇:电脑怎么制作音乐服务器?