feat: 先获取数据后触发画布

This commit is contained in:
Ming 2023-05-04 17:04:08 +08:00
parent 9ce042cc8a
commit 4dc8725b3e
2 changed files with 14 additions and 10 deletions

View File

@ -5,8 +5,9 @@ import { EditCanvasTypeEnum } from '@/store/modules/chartEditStore/chartEditStor
const chartEditStore = useChartEditStore()
// 布局处理
export const useLayout = () => {
onMounted(() => {
export const useLayout = (fn: () => Promise<void>) => {
let removeScale: Function = () => { }
onMounted(async () => {
// 设置 Dom 值(ref 不生效先用 document)
chartEditStore.setEditCanvas(
EditCanvasTypeEnum.EDIT_LAYOUT_DOM,
@ -17,13 +18,16 @@ export const useLayout = () => {
document.getElementById('go-chart-edit-content')
)
// 获取数据
await fn()
// 监听初始化
const removeScale = chartEditStore.listenerScale()
removeScale = chartEditStore.listenerScale()
})
onUnmounted(() => {
chartEditStore.setEditCanvas(EditCanvasTypeEnum.EDIT_LAYOUT_DOM, null)
chartEditStore.setEditCanvas(EditCanvasTypeEnum.EDIT_CONTENT_DOM, null)
removeScale()
})
})
}

View File

@ -109,10 +109,10 @@ const chartEditStore = useChartEditStore()
const { handleContextMenu } = useContextMenu()
// scale
provide(SCALE_KEY, null);
provide(SCALE_KEY, null)
//
useLayout()
useLayout(async () => {})
//
const { mouseenterHandle, mouseleaveHandle, mousedownHandle, mouseClickHandle } = useMouseHandle()