| | |
| | | <template> |
| | | <Portal.Host> |
| | | <div class="page-layout-wrapper" v-bind="$attrs"> |
| | | <div :class="['page-layout-wrapper', { isWeb: isWeb }]" v-bind="$attrs"> |
| | | <slot v-if="showNavigationBar" name="navigationBar"> |
| | | <CommonNavigationBar v-bind="_commonNavigationBarProps" /> |
| | | </slot> |
| | |
| | | import { useAuth } from '@/hooks'; |
| | | import { Portal } from 'senin-mini/components'; |
| | | import { usePickProps } from 'senin-mini/hooks'; |
| | | import { isWeb } from '@/utils/env'; |
| | | |
| | | defineOptions({ |
| | | name: 'PageLayout', |
| | |
| | | ); |
| | | |
| | | const navigationBarHeight = computed( |
| | | () => systemStore.info.statusBarHeight + systemStore.navigationBarHeight |
| | | () => (systemStore.info.statusBarHeight || 0) + systemStore.navigationBarHeight |
| | | ); |
| | | |
| | | const scrollViewHeight = computed(() => { |
| | |
| | | : systemStore.pageHeight; |
| | | pageHeight = pageHeight + (props.showNavigationBar ? 0 : navigationBarHeight.value); |
| | | return pageHeight + 'px'; |
| | | }); |
| | | |
| | | Taro.getSetting({ |
| | | success: function (res) { |
| | | if (!res.authSetting['scope.userLocation']) { |
| | | Taro.authorize({ |
| | | scope: 'scope.userLocation', |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | </script> |
| | | |
| | |
| | | filter: blur(0px); |
| | | border-radius: 0px 0px 20px 20px; |
| | | } |
| | | |
| | | &.isWeb { |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | |
| | | .page-layout-scroll-view-wrapper { |
| | | flex: 1; |
| | | min-height: 0; |
| | | } |
| | | } |
| | | } |
| | | </style> |