From ec4d5c1827487f4c901b69bd9eae58e111e82b32 Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期四, 20 五月 2021 18:05:25 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/views/popup/Popup.vue | 112 +++++++++++++++++++++++++------------------------------ 1 files changed, 51 insertions(+), 61 deletions(-) diff --git a/src/views/popup/Popup.vue b/src/views/popup/Popup.vue index ac5d088..242aea0 100644 --- a/src/views/popup/Popup.vue +++ b/src/views/popup/Popup.vue @@ -1,16 +1,32 @@ <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" v-model="tabIndex" @tab-click="handleClick"> <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-table v-if="item.tableList" + :data="item.tableList" + style="width: 100%"> + <el-table-column + prop="pipesegcode" + label="绠℃缂栫爜"> + </el-table-column> + <el-table-column + prop="startpointdepth" + label="璧风偣鍩嬫繁(m)"> + </el-table-column> + <el-table-column + prop="startpointz" + label="璧风偣楂樼▼(m)"> + </el-table-column> + </el-table> </el-tab-pane> </el-tabs> </div> @@ -18,74 +34,48 @@ <script> // import '@/assets/css/map/map-popup.scss' -import { props } from '../../conf/Constants' + +import { highlight } from '../../components/helpers/LocateHelper' export default { name: 'Popup', + props: ['datas'], data () { return { - tabsValue: '1', - tabs: [{ - title: '姹¢洦姘�', - name: '1' - }], - tabIndex: 2, + tabsValue: '', + tabIndex: 0, 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) + handleClick (tab, event) { + const data = this.datas[this.tabIndex] + const feature = data.feature + highlight(feature) + } + }, + watch: { + datas (newVal) { + if (newVal != null) { + this.tabsValue = newVal[0].name + } } } } @@ -94,9 +84,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