|  |  | 
 |  |  | <template> | 
 |  |  |    <view> | 
 |  |  |       <view class="container"> | 
 |  |  |          <view class="name all" @click="back(all)">{{all.title}}</view> | 
 |  |  |       </view> | 
 |  |  |       <view class="container" v-for="(item,i) in tree" :key="i"> | 
 |  |  |          <view :class="item.key"> | 
 |  |  |             <view class="title" v-show="item.key == 'dept_id'"  @click="switchbtn(item)"> | 
 |  |  |                <view>{{item.title}}</view> | 
 |  |  |                <view > | 
 |  |  |             <view class="title" v-show="item.key == 'dept_id'" > | 
 |  |  |                <view @click="back(item)">{{item.title}}</view> | 
 |  |  |                <view @click="switchbtn(item)"> | 
 |  |  |                   <uni-icons type="top" v-show="item.switch"></uni-icons> | 
 |  |  |                   <uni-icons type="bottom" v-show="!item.switch"></uni-icons> | 
 |  |  |                </view> | 
 |  |  |             </view> | 
 |  |  |             <view class="name" v-show="item.key == 'user_id'" @click="back()"> | 
 |  |  |             <view class="name" v-show="item.key == 'user_id'" @click="back(item)"> | 
 |  |  |                <view>{{item.title}}</view> | 
 |  |  |             </view> | 
 |  |  |             <view class="sub1" v-for="sub in item.children" style="margin-left: 1em;" v-show="item.switch"> | 
 |  |  |                <view :class="sub.key" class="title sub-title" v-show="sub.key == 'dept_id'"  @click="switchbtn(sub)"> | 
 |  |  |                   <view>{{sub.title}}</view> | 
 |  |  |                   <view> | 
 |  |  |                <view :class="sub.key" class="title sub-title" v-show="sub.key == 'dept_id'"  > | 
 |  |  |                   <view @click="back(sub)">{{sub.title}}</view> | 
 |  |  |                   <view @click="switchbtn(sub)"> | 
 |  |  |                      <!-- <uni-icons type="bottom"></uni-icons> --> | 
 |  |  |                      <uni-icons type="top" v-show="sub.switch"></uni-icons> | 
 |  |  |                      <uni-icons type="bottom" v-show="!sub.switch"></uni-icons> | 
 |  |  |                   </view> | 
 |  |  |                </view> | 
 |  |  |                 | 
 |  |  |                <view :class="sub.key" class="name" v-show="sub.key == 'user_id'"  @click="back()"> | 
 |  |  |                   <view>{{sub.title}}</view> | 
 |  |  |                <view :class="sub.key" class="name" v-show="sub.key == 'user_id'" > | 
 |  |  |                   <view  @click="back(sub)">{{sub.title}}</view> | 
 |  |  |                </view> | 
 |  |  |                 | 
 |  |  |                <view class="sub2" v-for="it in sub.children" style="margin-left: 1em;" v-show="sub.switch"> | 
 |  |  |                   <view :class="it.key" class="title sub-title" v-show="it.key == 'dept_id'">{{it.title}}</view> | 
 |  |  |                   <view :class="it.key" class="name" v-show="it.key == 'user_id'" @click="back()"> | 
 |  |  |                      <view>{{it.title}}</view> | 
 |  |  |                   <view :class="it.key" class="name" v-show="it.key == 'user_id'" > | 
 |  |  |                      <view @click="back(it)">{{it.title}}</view> | 
 |  |  |                   </view> | 
 |  |  |                </view> | 
 |  |  |             </view> | 
 |  |  | 
 |  |  |    export default { | 
 |  |  |       data() { | 
 |  |  |          return { | 
 |  |  |             tree: [{title: '超级管理员'}] | 
 |  |  |             tree: [{title: '超级管理员'}], | 
 |  |  |             all: {} | 
 |  |  |          } | 
 |  |  |       }, | 
 |  |  |       onShow() { | 
 |  |  | 
 |  |  |             let res = await user.getUserTree() | 
 |  |  |             if (res.code === 200) { | 
 |  |  |                this.tree = [] | 
 |  |  |                this.all = [] | 
 |  |  | 					 | 
 |  |  |                console.log(res.data[0]); | 
 |  |  |                // this.all = res.data[0] | 
 |  |  |                if (res.data[0].children) { | 
 |  |  |                   for (let k of res.data[0].children) { | 
 |  |  |                       | 
 |  |  |                      if (k.children && k.children.length > 0) { | 
 |  |  |                         for (let i of k.children) { | 
 |  |  |                            i['switch'] = true | 
 |  |  |                            console.log(i); | 
 |  |  |                            // console.log(i); | 
 |  |  |                         } | 
 |  |  |                      } | 
 |  |  |                      // console.log(k); | 
 |  |  | 
 |  |  |                } else { | 
 |  |  |                   this.tree.push(res.data[0]) | 
 |  |  |                } | 
 |  |  |                this.all = res.data[0] | 
 |  |  |             } else if (res.code === 403) { | 
 |  |  |                this.backLogin(res) | 
 |  |  |             } | 
 |  |  |             console.log(this.tree); | 
 |  |  |             // console.log(this.tree); | 
 |  |  |          }, | 
 |  |  |          switchbtn(item) { | 
 |  |  |             console.log(item); | 
 |  |  |             console.log(item.switch); | 
 |  |  |             item.switch = item.switch ? false : true | 
 |  |  |             console.log(item.switch); | 
 |  |  |          }, | 
 |  |  |          open(e) { | 
 |  |  |             // console.log('open', e) | 
 |  |  | 
 |  |  |                }); | 
 |  |  |             }, 1000); | 
 |  |  |          }, | 
 |  |  |          back() { | 
 |  |  |             uni.$emit('isRefresh', 1) | 
 |  |  |          back(it) { | 
 |  |  |             console.log(it); | 
 |  |  |             uni.$emit('isRefresh', it) | 
 |  |  |             uni.navigateBack({ | 
 |  |  |                 | 
 |  |  |             }) | 
 |  |  | 
 |  |  | </script> | 
 |  |  |  | 
 |  |  | <style> | 
 |  |  |    .all { | 
 |  |  |       box-shadow: -4px 0px 0px #55aaff; | 
 |  |  |       font-size: 15px; | 
 |  |  |       font-weight: 700; | 
 |  |  |       margin-left: 10rpx; | 
 |  |  |       display: flex; | 
 |  |  |       justify-content: space-between; | 
 |  |  |       align-items: center; | 
 |  |  |    } | 
 |  |  |    .container { | 
 |  |  |       margin:  16rpx; | 
 |  |  |       min-height: 35rpx; |