Oliver
2022-12-14 02ce22be65df8b717d5f1614e5d7dbfcdf1ce1b9
src/views/operate/fivepack/threepack/components/aside/index.vue
@@ -5,7 +5,7 @@
            <el-input placeholder="输入组织机构名称, 按下enter键搜索" v-model="searchArea" @change="filterTreeNode"></el-input>
        </div>
        <div class="menu">
            <el-tree ref="department" :filter-node-method="filterNode" :data="areaData" :props="defaultProps"></el-tree>
            <el-tree ref="department" :filter-node-method="filterNode" :data="areaData" :props="defaultProps" @node-click="nodeClick"></el-tree>
        </div>
    </div>
</template>
@@ -26,11 +26,16 @@
    },
    created() {
      department.getDepartmentList()
          .then(res => {
            this.areaData = res;
          })
          .catch(err => this.$message.error(err))
      if (sessionStorage.getItem('area')) {
        this.areaData = JSON.parse(sessionStorage.getItem('area'));
      } else {
        department.getDepartmentList()
            .then(res => {
              this.areaData = res;
              sessionStorage.setItem('area', JSON.stringify(this.areaData));
            })
            .catch(err => this.$message.error(err))
      }
    },
  methods: {
@@ -41,6 +46,11 @@
    filterNode(value, data) {
      if (!value) return true;
      return data.regionName.indexOf(value) !== -1;
    },
    nodeClick(data, node, props) {
      if (node.level > 1) {
        this.$emit('selectedDepartment', data);
      }
    }
  }
};