From 81e426e19db140e630f45409c1569fe16dbcc33f Mon Sep 17 00:00:00 2001
From: 徐旺旺 <11530253@qq.com>
Date: 星期二, 18 五月 2021 15:25:19 +0800
Subject: [PATCH] 修复点击弹窗bug

---
 src/views/popup/Popup.vue |   85 ++++++++++++++----------------------------
 1 files changed, 28 insertions(+), 57 deletions(-)

diff --git a/src/views/popup/Popup.vue b/src/views/popup/Popup.vue
index ac5d088..98ba35b 100644
--- a/src/views/popup/Popup.vue
+++ b/src/views/popup/Popup.vue
@@ -1,15 +1,15 @@
 <template>
-  <div id="popup" v-if="isShow" class="s-map-popup-panel">
-    <el-tabs v-model="tabsValue" type="card" @edit="handleTabsEdit">
+  <div id="popup" class="s-map-popup-panel" style="min-width: 280px;max-width: 280px;padding: 0 10px">
+    <el-tabs type="card" :value="0">
       <el-tab-pane
-              :key="item.name"
-              v-for="(item) in tabs"
+              :key="index"
+              v-for="(item,index) in datas"
               :label="item.title"
-              :name="item.name"
+              :name="index.toString()"
       >
-        <el-row v-for="(v,k) in filter" :key="k">
-          <el-col :span="12">{{k}}</el-col>
-          <el-col :span="12">{{v}}</el-col>
+        <el-row v-for="(item,key)  in item.content" :key="key">
+          <el-col :span="12"><B>{{key}}锛�</B></el-col>
+          <el-col :span="12">{{item}}</el-col>
         </el-row>
       </el-tab-pane>
     </el-tabs>
@@ -18,74 +18,45 @@
 
 <script>
 // import '@/assets/css/map/map-popup.scss'
-import { props } from '../../conf/Constants'
 
 export default {
   name: 'Popup',
+  props: ['datas'],
   data () {
     return {
-      tabsValue: '1',
-      tabs: [{
-        title: '姹¢洦姘�',
-        name: '1'
-      }],
+      tabsValue: '',
       tabIndex: 2,
       isShow: false,
-      properties: {},
-      props: props
+      properties: {}
     }
   },
   computed: {
-    filter () {
-      var obj = {}
-      for (const key in this.properties) {
-        if (this.props[key]) {
-          obj[this.props[key]] = this.properties[key]
-        }
-      }
-      return obj
-    }
   },
   methods: {
-    handleTabsEdit (targetName, action) {
-      if (action === 'add') {
-        const newTabName = ++this.tabIndex + ''
-        this.editableTabs.push({
-          title: 'New Tab',
-          name: newTabName,
-          content: 'New Tab content'
-        })
-        this.editableTabsValue = newTabName
-      }
-      if (action === 'remove') {
-        const tabs = this.editableTabs
-        let activeName = this.editableTabsValue
-        if (activeName === targetName) {
-          tabs.forEach((tab, index) => {
-            if (tab.name === targetName) {
-              const nextTab = tabs[index + 1] || tabs[index - 1]
-              if (nextTab) {
-                activeName = nextTab.name
-              }
-            }
-          })
+    filter (content) {
+      var obj = {}
+      for (const key in content) {
+        if (this.props[key]) {
+          obj[this.props[key]] = content[key]
         }
-
-        this.editableTabsValue = activeName
-        this.editableTabs = tabs.filter(tab => tab.name !== targetName)
       }
-    },
-    setDatas (feature) {
-      this.properties = feature.properties
+      // console.log(obj)
+      return obj
     },
     setShow () {
       // this.style.display='auto'
-      this.data = 'adsfadfsadfsdafsdfsdfdsafsdafsdafa'
       this.isShow = true
     },
     onClick () {
       const param = 1111
       this.$emit('callPopup', param)
+    }
+  },
+  watch: {
+    datas (newVal) {
+      if (newVal != null) {
+        this.tabsValue = newVal[0].name
+      }
     }
   }
 }
@@ -94,9 +65,9 @@
 <style lang="less" >
 @import '../../assets/css/map/map-popup.less';
 #popup{
-  .el-tabs__content{
-    max-height: 300px;
-    overflow: auto;
+ .el-tabs__content{
+    max-height: 240px;
+    overflow-y: scroll;
   }
 }
 </style>

--
Gitblit v1.8.0