|
@@ -12,7 +12,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
- import { computed, defineComponent, unref } from 'vue';
|
|
|
+ import { computed, defineComponent, unref, ref } from 'vue';
|
|
|
import { Layout } from 'ant-design-vue';
|
|
|
|
|
|
import { GithubFilled } from '@ant-design/icons-vue';
|
|
@@ -24,6 +24,7 @@
|
|
|
import { useRootSetting } from '/@/hooks/setting/useRootSetting';
|
|
|
import { useRouter } from 'vue-router';
|
|
|
import { useDesign } from '/@/hooks/web/useDesign';
|
|
|
+ import { useLayoutHeight } from '../content/useContentViewHeight';
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: 'LayoutFooter',
|
|
@@ -34,10 +35,29 @@
|
|
|
const { currentRoute } = useRouter();
|
|
|
const { prefixCls } = useDesign('layout-footer');
|
|
|
|
|
|
+ const footerRef = ref<ComponentRef>(null);
|
|
|
+ const { setFooterHeight } = useLayoutHeight();
|
|
|
+
|
|
|
const getShowLayoutFooter = computed(() => {
|
|
|
+ if (unref(getShowFooter)) {
|
|
|
+ const footerEl = unref(footerRef)?.$el;
|
|
|
+ setFooterHeight(footerEl?.offsetHeight || 0);
|
|
|
+ } else {
|
|
|
+ setFooterHeight(0);
|
|
|
+ }
|
|
|
return unref(getShowFooter) && !unref(currentRoute).meta?.hiddenFooter;
|
|
|
});
|
|
|
- return { getShowLayoutFooter, prefixCls, t, DOC_URL, GITHUB_URL, SITE_URL, openWindow };
|
|
|
+
|
|
|
+ return {
|
|
|
+ getShowLayoutFooter,
|
|
|
+ prefixCls,
|
|
|
+ t,
|
|
|
+ DOC_URL,
|
|
|
+ GITHUB_URL,
|
|
|
+ SITE_URL,
|
|
|
+ openWindow,
|
|
|
+ footerRef,
|
|
|
+ };
|
|
|
},
|
|
|
});
|
|
|
</script>
|