skyblued 2 years ago
parent
commit
a352cbc7dd

+ 19 - 1
src/views/shop-mall/components/TheHomeHeader/index.tsx

@@ -8,11 +8,28 @@ import IconMore from '../../images/icon-more.png'
 import IconLocation from '../../images/icon-location.png'
 import IconOrder from '../../images/icon-order.png'
 import { Popover } from 'vant'
+import { postMessage } from '@/helpers/native-message'
 
 export default defineComponent({
   name: 'TheHomeHeader',
   emits: ['cart', 'more', 'search'],
   setup(props, { emit }) {
+    const init = () => {
+      // 设置是否显示导航栏 0 显示 1 不显示
+      const navBarHeight = ref(sessionStorage.getItem('navHeight'))
+      postMessage({ api: 'setBarStatus', content: { status: 0 } })
+      if (navBarHeight.value) return
+      postMessage({ api: 'getNavHeight' }, res => {
+        const { content } = res as any
+        const dpi = content.dpi || 2
+        if (content.navHeight) {
+          const navHeight = content.navHeight / dpi + ''
+          sessionStorage.setItem('navHeight', navHeight)
+          navBarHeight.value = navHeight
+        }
+      })
+    }
+    init()
     const popoverSlots = {
       reference: () => (
         <img class={styles.more} src={IconMore} onClick={() => emit('more')} />
@@ -26,6 +43,7 @@ export default defineComponent({
     ]
     return () => (
       <div class={styles.theHomeHeader}>
+        <div style={{ height: 'calc(var(--van-nav-bar-height))' }}></div>
         <div class={styles.content}>
           <img class={styles.mall} src={IconMall} />
           <div class={styles.searchBox} onClick={() => emit('search')}>
@@ -43,7 +61,7 @@ export default defineComponent({
             v-model:show={popoverShow.value}
             v-slots={popoverSlots}
             actions={actions}
-            onSelect={(action) => emit('more', action)}
+            onSelect={action => emit('more', action)}
           ></Popover>
         </div>
       </div>

+ 1 - 1
src/views/shop-mall/components/menu-list/index.module.less

@@ -1,5 +1,5 @@
 .swipeType {
-  margin: 14px 14px 0;
+  margin: 14px 0 0;
   padding-bottom: 14px;
   :global {
     .van-swipe__indicators {

+ 1 - 1
src/views/shop-mall/index.module.less

@@ -83,7 +83,7 @@
       color: var(--van-primary);
     }
     .van-tabs__nav{
-      padding: 0 10px;
+      padding: 0 4px 0 14px;
     }
     .van-tabs__line{
       display: none;