| | |
| | | <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> |
| | |
| | | }, |
| | | |
| | | 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: { |
| | |
| | | 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); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | |
| | | <style lang="scss" scoped> |
| | | .aside { |
| | | width: 200px; |
| | | height: calc(100vh - 102px); |
| | | background-color: #09152f; |
| | | height: calc(103vh - 102px); |
| | | background-color: #ffffff; |
| | | padding: 10px; |
| | | display: flex; |
| | | flex-direction: column; |
| | |
| | | line-height: 30px; |
| | | |
| | | &::v-deep .el-input__inner { |
| | | background-color: #09152f; |
| | | // background-color: #09152f; |
| | | border: 1px solid #17324c; |
| | | } |
| | | } |
| | |
| | | flex: 1; |
| | | .el-tree{ |
| | | height: 100%; |
| | | background-color: #09152f; |
| | | &::v-deep .el-tree-node:focus>.el-tree-node__content{ |
| | | background-color: #092c4a; |
| | | } |
| | | &::v-deep .el-tree-node__content:hover{ |
| | | background-color: #092c4a; |
| | | } |
| | | // background-color: #09152f; |
| | | // &::v-deep .el-tree-node:focus>.el-tree-node__content{ |
| | | // background-color: #092c4a; |
| | | // } |
| | | // &::v-deep .el-tree-node__content:hover{ |
| | | // background-color: #092c4a; |
| | | // } |
| | | } |
| | | } |
| | | } |