From 37508ca4113701458cae84fff64062427ba43898 Mon Sep 17 00:00:00 2001 From: Vben Date: Fri, 26 Feb 2021 20:33:06 +0800 Subject: [PATCH] fix(modal): ensure that the height is correct in the modal full screen state close #308 --- src/components/Modal/src/BasicModal.vue | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/components/Modal/src/BasicModal.vue b/src/components/Modal/src/BasicModal.vue index d09f576cc71..259ed207b16 100644 --- a/src/components/Modal/src/BasicModal.vue +++ b/src/components/Modal/src/BasicModal.vue @@ -32,7 +32,7 @@ ref="modalWrapperRef" :loading="getProps.loading" :minHeight="getProps.minHeight" - :height="getProps.height" + :height="getWrapperHeight" :visible="visibleRef" :modalFooterHeight="footer !== undefined && !footer ? 0 : undefined" v-bind="omit(getProps.wrapperProps, 'visible', 'height')" @@ -136,8 +136,19 @@ } ); - const getBindValue = computed((): any => { - return { ...attrs, ...unref(getProps) }; + const getBindValue = computed( + (): Recordable => { + const attr = { ...attrs, ...unref(getProps) }; + if (unref(fullScreenRef)) { + return omit(attr, 'height'); + } + return attr; + } + ); + + const getWrapperHeight = computed(() => { + if (unref(fullScreenRef)) return undefined; + return unref(getProps).height; }); watchEffect(() => { @@ -217,6 +228,7 @@ handleExtHeight, handleHeightChange, handleTitleDbClick, + getWrapperHeight, }; }, });