AppPageFooter.vue 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <template>
  2. <div class="app-footer" :style="{ width: getCalcContentWidth }">
  3. <div class="app-footer__left">
  4. <slot name="left" />
  5. </div>
  6. <div class="app-footer__right">
  7. <slot name="right" />
  8. </div>
  9. </div>
  10. </template>
  11. <script lang="ts">
  12. import { defineComponent } from 'vue';
  13. import { useMenuSetting } from '/@/hooks/setting/useMenuSetting';
  14. export default defineComponent({
  15. name: 'AppFooterToolbar',
  16. setup() {
  17. const { getCalcContentWidth } = useMenuSetting();
  18. return { getCalcContentWidth };
  19. },
  20. });
  21. </script>
  22. <style lang="less" scoped>
  23. .app-footer {
  24. position: fixed;
  25. right: 0;
  26. bottom: 0;
  27. z-index: 99;
  28. display: flex;
  29. width: 100%;
  30. align-items: center;
  31. padding: 0 24px;
  32. line-height: 44px;
  33. background: #fff;
  34. border-top: 1px solid #f0f0f0;
  35. box-shadow: 0 -6px 16px -8px rgba(0, 0, 0, 0.08), 0 -9px 28px 0 rgba(0, 0, 0, 0.05),
  36. 0 -12px 48px 16px rgba(0, 0, 0, 0.03);
  37. transition: width 0.4s;
  38. &__left {
  39. flex: 1 1;
  40. }
  41. }
  42. </style>