zhengyiming
1 天以前 c0bcba49bef43b880978ff63b2ac00f1ba5c5c6a
apps/taro/src/components/Layout/PageLayout.vue
@@ -1,18 +1,8 @@
<template>
  <Portal.Host>
    <div :class="['page-layout-wrapper', { isWeb: isWeb, hasBgColor }]" v-bind="$attrs">
    <div :class="['page-layout-wrapper', { isWeb: isWeb, hasBgColor }]">
      <slot v-if="_showNavigationBar" name="navigationBar">
        <CommonNavigationBar v-bind="_commonNavigationBarProps" />
      </slot>
      <slot name="bg">
        <div
          v-if="hasLinearBg"
          class="page-layout-linear-bg"
          :style="{
            height: '100%',
          }"
        ></div>
      </slot>
      <div class="page-layout-scroll-view-wrapper" :style="{ height: scrollViewHeight }">
@@ -48,35 +38,14 @@
import { isWeb, isInAlipay, isInWeChat } from '@/utils/env';
//@ts-ignore
import { setPageTitle } from '@/utils';
import { pageLayoutProps } from './layout';
defineOptions({
  name: 'PageLayout',
  inheritAttrs: false,
});
const props = defineProps({
  ...commonNavigationBarProps,
  needAuth: {
    type: Boolean,
    default: true,
  },
  useView: {
    type: Boolean,
    default: false,
  },
  hasLinearBg: {
    type: Boolean,
    default: false,
  },
  linearBgHeight: {
    type: Number,
    default: 388,
  },
  hasBgColor: {
    type: Boolean,
    default: false,
  },
});
const props = defineProps(pageLayoutProps);
setPageTitle(props.title);
@@ -122,6 +91,18 @@
<style lang="scss">
@import '@/styles/common.scss';
.page-layout-container {
  height: 100%;
  position: relative;
  .page-layout-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 100;
  }
}
.page-layout-wrapper {
  /* background-color: $body-background-color; */