fix(editor): 没有页面时隐藏属性面板

This commit is contained in:
roymondchen 2023-06-26 16:55:51 +08:00
parent 9de04ddaa4
commit 91e4680024
3 changed files with 5 additions and 5 deletions

View File

@ -1,6 +1,6 @@
<template> <template>
<div ref="el" class="m-editor-layout"> <div ref="el" class="m-editor-layout">
<template v-if="hasLeft"> <template v-if="hasLeft && $slots.left">
<div class="m-editor-layout-left" :class="leftClass" :style="`width: ${left}px`"> <div class="m-editor-layout-left" :class="leftClass" :style="`width: ${left}px`">
<slot name="left"></slot> <slot name="left"></slot>
</div> </div>
@ -11,7 +11,7 @@
<slot name="center"></slot> <slot name="center"></slot>
</div> </div>
<template v-if="hasRight"> <template v-if="hasRight && $slots.right">
<Resizer @change="changeRight"></Resizer> <Resizer @change="changeRight"></Resizer>
<div class="m-editor-layout-right" :class="rightClass" :style="`width: ${right}px`"> <div class="m-editor-layout-right" :class="rightClass" :style="`width: ${right}px`">
<slot name="right"></slot> <slot name="right"></slot>

View File

@ -33,7 +33,7 @@
</slot> </slot>
</template> </template>
<template v-if="pageLength > 0 && nodes.length === 1" #right> <template v-if="pageLength > 0" #right>
<TMagicScrollbar> <TMagicScrollbar>
<slot name="props-panel"></slot> <slot name="props-panel"></slot>
</TMagicScrollbar> </TMagicScrollbar>
@ -68,7 +68,6 @@ const codeOptions = inject('codeOptions', {});
const { editorService, uiService } = inject<Services>('services') || {}; const { editorService, uiService } = inject<Services>('services') || {};
const root = computed(() => editorService?.get('root')); const root = computed(() => editorService?.get('root'));
const nodes = computed(() => editorService?.get('nodes') || []);
const pageLength = computed(() => editorService?.get('pageLength') || 0); const pageLength = computed(() => editorService?.get('pageLength') || 0);
const showSrc = computed(() => uiService?.get('showSrc')); const showSrc = computed(() => uiService?.get('showSrc'));

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="m-editor-props-panel"> <div class="m-editor-props-panel" v-if="nodes.length === 1">
<slot name="props-panel-header"></slot> <slot name="props-panel-header"></slot>
<MForm <MForm
ref="configForm" ref="configForm"
@ -35,6 +35,7 @@ const configForm = ref<InstanceType<typeof MForm>>();
const curFormConfig = ref<any>([]); const curFormConfig = ref<any>([]);
const services = inject<Services>('services'); const services = inject<Services>('services');
const node = computed(() => services?.editorService.get('node')); const node = computed(() => services?.editorService.get('node'));
const nodes = computed(() => services?.editorService.get('nodes') || []);
const propsPanelSize = computed(() => services?.uiService.get('propsPanelSize') || 'small'); const propsPanelSize = computed(() => services?.uiService.get('propsPanelSize') || 'small');
const stage = computed(() => services?.editorService.get('stage')); const stage = computed(() => services?.editorService.get('stage'));