MrShi
2024-03-07 2ae60f81bbef5b2de4a9cc3e90bbedf19e8e4446
admin/src/components/common/Tree.vue
@@ -18,11 +18,12 @@
    <div class="tree">
        <div v-for="(item, index) in list" :key="index" @click.stop="clickIten(item)">
            <div class="tree_item">
                <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.status }" v-show="item.status === 1 && item.childList.length > 0"></i>
                <i class="el-icon-caret-right color" v-show="item.childList.length > 0 && item.status === 0"></i>
                <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.status === 1 && item.childList.length === 0 }">{{ item.name }}</div>
                <i class="el-icon-caret-bottom" :class="{ 'activeColor': item.fsStatus === 1 }" v-show="item.fsStatus === 1 && item.childList.length > 0"></i>
                <i class="el-icon-caret-right color" v-show="item.childList.length > 0 && (item.fsStatus === 0 || !item.fsStatus)"></i>
                <div class="tree_item_label long-title-style" :title="item.name" :class="{ 'activeColor': item.fsDate === 1 && item.childList.length === 0 }">{{ item.name }}</div>
            </div>
            <div class="tree_childern" v-show="item.status === 1">
<!--            v-show="item.status === 1"-->
            <div class="tree_childern" v-show="item.fsStatus === 1">
                <tree
                    :list="item.childList"
                    :defaultProps="defaultProps"
@@ -68,7 +69,10 @@
    // 点击当前项
    clickIten (item) {
      this.recursion(this.list)
      item.status === 0 ? item.status = 1 : item.status = 0
      item.fsDate === 0 || !item.fsDate ? item.fsDate = 1 : item.fsDate = 0
      if (item.childList.length > 0) {
        item.fsStatus === 0 || !item.fsStatus ? item.fsStatus = 1 : item.fsStatus = 0
      }
      // item[this.defaultProps.status] = !item[this.defaultProps.status]
      // this.list.forEach(subItem => {
      //   if ((subItem[this.defaultProps.id] !== item[this.defaultProps.id] && subItem[this.defaultProps.status]) || (this.list.length === 1 && subItem[this.defaultProps.status] === false)) {
@@ -98,7 +102,7 @@
      //   }
      // })
      children.forEach(item => {
        item.status = 0
        item.fsDate = 0
        if (item.childList.length > 0) {
          this.recursion(item.childList)
        }