46 lines
923 B
Vue
46 lines
923 B
Vue
<template>
|
|
<fullscreen-dialog v-model="dialogVisible" @close="onClose" hide-destroy>
|
|
<div class="canvas-box">
|
|
<depth-canvas :config="config" @workbench="onWorkbench" />
|
|
</div>
|
|
</fullscreen-dialog>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import FullscreenDialog from '../components/fullscreen-dialog.vue'
|
|
import depthCanvas from './depth-canvas.vue'
|
|
import { ref } from 'vue'
|
|
const dialogVisible = ref(false)
|
|
const config = ref({
|
|
id: '',
|
|
url: ''
|
|
})
|
|
|
|
const open = (options) => {
|
|
config.value = options
|
|
dialogVisible.value = true
|
|
}
|
|
// 工作区
|
|
const onWorkbench = (options) => {
|
|
dialogVisible.value = false
|
|
config.value.onWorkbench?.(options)
|
|
}
|
|
// 关闭
|
|
const onClose = () => {
|
|
dialogVisible.value = false
|
|
config.value.onClose?.()
|
|
}
|
|
|
|
defineExpose({
|
|
open,
|
|
close
|
|
})
|
|
</script>
|
|
<style lang="less" scoped>
|
|
.canvas-box {
|
|
padding-top: 10rem;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
</style>
|