123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <template>
- <div ref="ref_dom" class="gis-overlay-default">
- <template v-if="comCpt?.com">
- <Component :is="comCpt.com"/>
- </template>
- </div>
- </template>
- <script lang="ts">
- import {
- defineComponent,
- computed,
- onMounted,
- ref,
- reactive,
- watch,
- getCurrentInstance,
- ComponentInternalInstance,
- toRefs,
- nextTick, markRaw
- } from 'vue'
- import {useStore} from 'vuex'
- import {useRouter, useRoute} from 'vue-router'
- import {ElMessage, ElMessageBox} from "element-plus";
- import SbCom from './sb.vue'
- import JqCom from './jq.vue'
- import LgCom from './lg.vue'
- import CzwCom from './czw.vue'
- import HczCom from './hcz.vue'
- export default defineComponent({
- name: '',
- components: {
- SbCom,
- JqCom,
- LgCom,
- CzwCom,
- HczCom,
- },
- props: {},
- setup(props, {emit}) {
- const store = useStore();
- const router = useRouter();
- const route = useRoute();
- const that = (getCurrentInstance() as ComponentInternalInstance).appContext.config.globalProperties
- const state = reactive({
- comps: [
- {label: '设备', value: 'sb', com: markRaw(SbCom)},
- {label: '景区', value: 'jq', com: markRaw(JqCom)},
- {label: '旅馆', value: 'lg', com: markRaw(LgCom)},
- {label: '出租屋', value: 'czw', com: markRaw(CzwCom)},
- {label: '火车站', value: 'hcz', com: markRaw(HczCom)},
- ]
- })
- const comCpt = computed(() => {
- return state.comps.filter(v => v.value === store.state.gis.gisParams.default.type)?.[0]
- })
- const ref_dom = ref()
- onMounted(() => {
- })
- return {
- ...toRefs(state),
- comCpt,
- ref_dom
- }
- },
- })
- </script>
- <style scoped lang="scss">
- </style>
|