1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
| <template>
| <div id="popup" class="s-map-popup-panel" style="min-width: 280px;max-width: 280px;padding: 0 10px">
| <el-tabs value="0" type="card">
| <el-tab-pane
| :key="item.name"
| v-for="(item,index) in datas"
| :label="item.title"
| :name="index"
| >
| <el-row v-for="(v,k) in filter(item.content)" :key="k">
| <el-col :span="12"><B>{{k}}:</B></el-col>
| <el-col :span="12">{{v}}</el-col>
| </el-row>
| </el-tab-pane>
| </el-tabs>
| </div>
| </template>
|
| <script>
| // import '@/assets/css/map/map-popup.scss'
| import { props } from '../../conf/Constants'
|
| export default {
| name: 'Popup',
| props: ['datas'],
| data () {
| return {
| tabsValue: '',
| tabIndex: 2,
| isShow: false,
| properties: {},
| props: props
| }
| },
| computed: {
| },
| methods: {
| filter (content) {
| var obj = {}
| for (const key in content) {
| if (this.props[key]) {
| obj[this.props[key]] = content[key]
| }
| }
| console.log(obj)
| return obj
| },
| setDatas (layer) {
| console.log(layer)
| this.datas = layer
| this.tabsValue = layer[0].name
| },
| setShow () {
| // this.style.display='auto'
| this.isShow = true
| },
| onClick () {
| const param = 1111
| this.$emit('callPopup', param)
| }
| },
| watch: {
| datas (newVal) {
| console.log(newVal)
| if (newVal != null) {
| this.tabsValue = newVal[0].name
| }
| }
| }
| }
| </script>
|
| <style lang="less" >
| @import '../../assets/css/map/map-popup.less';
| #popup{
| .el-tabs__content{
| max-height: 240px;
| overflow-y: scroll;
| }
| }
| </style>
|
|