76 lines
1.8 KiB
Vue
76 lines
1.8 KiB
Vue
<template>
|
|
<Dialog :show="tempData.show"
|
|
:vue-name="dialogConfig.vueName"
|
|
:height="dialogConfig.height"
|
|
:width="dialogConfig.width"
|
|
:resize="true"
|
|
:header="dialogConfig.header"
|
|
:dialog-type="dialogConfig.type"
|
|
:position="dialogConfig.position">
|
|
<template slot="default">
|
|
<AreaList ref="AreaListTemp" :data="tempData.infoData.data"></AreaList>
|
|
</template>
|
|
</Dialog>
|
|
</template>
|
|
|
|
<script lang="ts">
|
|
import {Component, Vue, Watch} from 'vue-property-decorator'
|
|
import Dialog from '@/components/dialog/index.vue'
|
|
import AreaList from '@/views/on-map-view/AreaList.vue'
|
|
|
|
@Component({
|
|
components: {
|
|
Dialog,
|
|
AreaList
|
|
},
|
|
props: {
|
|
tempData: {
|
|
type: Object,
|
|
required: true,
|
|
default: () => {
|
|
return {}
|
|
}
|
|
}
|
|
}
|
|
})
|
|
export default class AreaListTemp extends Vue {
|
|
private dialogConfig = {
|
|
width: '40.625rem',
|
|
height: '29.5rem',
|
|
header: {
|
|
title: `${this.$t('message.menu.AreaListTemp')}(${this.$props.tempData.infoData.data.title})`,
|
|
hasIcon: false,
|
|
iconSrc: '',
|
|
hasMin: true,
|
|
hasMax: false
|
|
},
|
|
position: {
|
|
top: '6.25rem',
|
|
left: '53.125rem'
|
|
},
|
|
vueName: ''
|
|
}
|
|
|
|
@Watch('tempData', {
|
|
deep: true,
|
|
immediate: true
|
|
})
|
|
dataChange(data: any) {
|
|
const dialogData = data.dialogData
|
|
this.dialogConfig.vueName = dialogData.vueName
|
|
this.dialogConfig.header.title = `${this.$t('message.menu.AreaListTemp')}(${data.infoData.data.title})`
|
|
}
|
|
|
|
public mounted() {
|
|
window.addEventListener("setItemEvent", (e: any) => {
|
|
if (e.key === 'language') {
|
|
this.dialogConfig.header.title = `${this.$t('message.menu.AreaListTemp')}(${this.$props.data.infoData.data.title})`
|
|
}
|
|
});
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
</style>
|