From 0039429882f8434000a0f61d6995324f1589633a Mon Sep 17 00:00:00 2001 From: seatonwan9 <seatonwan9@163.com> Date: 星期日, 30 五月 2021 13:36:06 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/LayerController/LayerController.vue | 121 ++++++++++++++++++++++++++------------- 1 files changed, 80 insertions(+), 41 deletions(-) diff --git a/src/components/LayerController/LayerController.vue b/src/components/LayerController/LayerController.vue index 0d010eb..37af978 100644 --- a/src/components/LayerController/LayerController.vue +++ b/src/components/LayerController/LayerController.vue @@ -1,9 +1,17 @@ <template> - <div class="float-panel"> - <div :class='["iconBtn",layerControllerVisible ? "active" : ""]' @click="showPanel"><span><img src="@assets/images/map-pages/icon/layer.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">鍥惧眰</span></span></div> - <transition name="fade"> - <div :class="'legend-content map-background'" style="position: absolute;left: 50px;top: 0" v-show="layerControllerVisible"> + <div :class='["float-panel",layerControllerVisible ? "active" : ""]' > + + <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="鍥惧眰鎺у埗" placement="left"> + <div @click="showPanel" class="iconBtn" :class='layerControllerVisible ? "active-button" : ""' v-show="!layerControllerVisible" style=" position: absolute;top:0;left: 0;"> + <!-- <img src="@assets/images/map-pages/icon/layer.png" alt="" class="icon"> --> + <i class="icon iconfont iconlayer-group"></i> + <!-- <span class="icon-name">鍥惧眰</span>--> + </div> + </el-tooltip> + <transition name="layerChange"> + <div :class="'legend-content map-background'" v-show="layerControllerVisible"> <lc-service-layer></lc-service-layer> + <button @click="showPanel" type="button" class="el-button special-button el-button--default el-icon-d-arrow-left"></button> </div> </transition> </div> @@ -11,11 +19,10 @@ <script> import '@assets/css/map/magic.min.css' -import presets from './layerControllerPresets' import iconSetting from '@/assets/images/map-pages/icon/setting.png' import LcServiceLayer from './modules/LcServiceLayer' - +import bus from '@/eventBus' export default { name: 'LayerController', components: { LcServiceLayer }, @@ -50,27 +57,21 @@ } }, mounted () { - this.$nextTick(function () { - this.init() + const that = this + bus.$on('changeState', function (state) { + if (state.num !== 3 && state.type) { + that.layerControllerVisible = false + } }) }, methods: { showPanel () { this.layerControllerVisible = !this.layerControllerVisible - }, - init () { - this.initPreset() - }, - initPreset () { - if (this.preset !== 'default') { - const prmPreset = presets[this.preset] - Object.assign(this.layerControllerVisible, prmPreset) // 闃叉棰勮鍙傛暟涓庨粯璁ゅ弬鏁颁笉涓�鑷村鑷存姤閿欙紝濡傛灉娌℃湁鎸夌収鎮ㄧ殑閰嶇疆鍙戠敓鏀瑰彉锛岃妫�鏌ユ嫾鍐欐槸鍚︽纭� - if (prmPreset === 'undefined') { - console.log('璇ュ浘灞傛帶鍒堕潰鏉跨殑棰勮娌℃湁鎵惧埌锛岃妫�鏌ラ璁惧悕绉版槸鍚︽纭紒') - } else { - this.$store.commit('updateLayerControllerVisible', this.layerControllerVisible) - } + const state = { + type: this.layerControllerVisible, + num: 3 } + bus.$emit('changeState', state) }, switchPanel () { this.panelSwitch.main = !this.panelSwitch.main @@ -87,29 +88,43 @@ </script> <style lang="less"> + + .layerChange-enter-active { + transform-origin: top left; + animation: bounce-in .2s; + } + .layerChange-leave-active { + transform-origin: top left; + animation: bounce-in .2s reverse; + } + /* + + .layerChange-enter-active, + .layerChange-leave-active { + transition: all 0.5s; + } + + .layerChange-enter, + .layerChange-leave-to { + opacity: 0; + transform: translateX(-100px); + }*/ + .float-panel.active{ + overflow: visible; + } .float-panel { position: absolute; - left: 2px; - top: 120px; + left: 0.14583rem; + top: 0.73979rem; height: auto; font-size: 11px; z-index: 1000; - - div { - color: #00fff6; - } - .iconBtn { - width:45px; - text-align: center; - background: rgba(0, 16, 30, 0.5); - cursor: pointer; - color: #00fff6; - border: 0.00521rem solid #00fff6; - box-shadow: 0 0 0.03rem #00fff6; - } - .active { - border: 0.00521rem solid #fff700; - box-shadow: 0 0 0.03rem #fff700; + display: flex; + min-height: 0.28rem; + min-width: 0.28rem; + overflow: hidden; + .iconBtn.active{ + display: none; } .title-border { width: 100%; @@ -216,9 +231,8 @@ .switch-head-down { transform: rotateX(180deg); transform-origin: 50% 50%; - transition: transform 0.5s linear 0s; + transition: transform 2s linear 0s; } - select { background: transparent; margin: 6px; @@ -246,6 +260,31 @@ border-radius: 0px; background: #0E3565; } + .el-button--default{ + padding: 0; + background:@background-color4; + color:@color-tool; + position: absolute; + top:20px; + right:0.02rem; + border:none;//1px solid @color-tool; + width: 0.2rem; + height: 0.2rem; + text-align: center; + line-height: 0.2rem; + margin-top: -0.1rem; + border-radius: 50%; + // border-radius: 0.03rem 50% 50% 0.03rem; + } + .el-button--default:hover{ + background:@background-color; + border:1px solid @color; + box-shadow: 0 0 2px @color; + color:@color; + } + .legend-content{ + //width: 1.79167rem; + } } </style> -- Gitblit v1.8.0