Просмотр исходного кода

零售端-订单列表样式优化

ouyang 11 часов назад
Родитель
Сommit
3c95dccc31
1 измененных файлов с 18 добавлено и 4 удалено
  1. 18 4
      mallApp/src/pages/home/order.vue

+ 18 - 4
mallApp/src/pages/home/order.vue

@@ -15,7 +15,8 @@
           </view>
           </view>
         </view>
         </view>
       </view>
       </view>
-      <view class="filter-bar">
+      <!-- 店铺模式(shop-tab-bar)下固定当前店,隐藏跨店筛选 -->
+      <view v-if="!showShopTabBar" class="filter-bar">
         <view class="store-filter" @click="openStorePopup">
         <view class="store-filter" @click="openStorePopup">
 		  <sprite-icon name="shaixuan" :size="30" custom-class="member-crown-icon" />
 		  <sprite-icon name="shaixuan" :size="30" custom-class="member-crown-icon" />
           <text class="filter-text">店铺筛选</text>
           <text class="filter-text">店铺筛选</text>
@@ -24,8 +25,8 @@
       </view>
       </view>
     </view>
     </view>
 
 
-    <!-- 列表占位,避免被固定头部遮挡 -->
-    <view class="order-body">
+    <!-- 列表区:店铺模式 Tab 用 sticky 占位,此处仅留与 Tab 的间距 -->
+    <view class="order-body" :class="{ 'order-body--shop-nav': showShopTabBar }">
       <block v-if="!$util.isEmpty(list.data)">
       <block v-if="!$util.isEmpty(list.data)">
         <view class="pay_list">
         <view class="pay_list">
           <OrderItem
           <OrderItem
@@ -92,7 +93,7 @@
  * 订单 Tab 页(主包)
  * 订单 Tab 页(主包)
  * 展示订单状态 Tab、店铺筛选与订单卡片列表
  * 展示订单状态 Tab、店铺筛选与订单卡片列表
  * 待付款「立即付款」、待配送「联系客服」由卡片事件在此处理
  * 待付款「立即付款」、待配送「联系客服」由卡片事件在此处理
- * 店铺场景:query.shopNav=1 时隐藏原生 tabBar,改用 shop-tab-bar;
+ * 店铺场景:query.shopNav=1 时隐藏原生 tabBar,改用 shop-tab-bar,并隐藏店铺筛选
  * 切回其它原生 Tab 时清除店铺模式,避免底栏消失
  * 切回其它原生 Tab 时清除店铺模式,避免底栏消失
  */
  */
 import { SHOP_NAV_ACTIVE_KEY } from "@/constant/storageKeys";
 import { SHOP_NAV_ACTIVE_KEY } from "@/constant/storageKeys";
@@ -497,6 +498,13 @@ export default {
   box-sizing: border-box;
   box-sizing: border-box;
 }
 }
 
 
+/* 店铺模式:Tab 改 sticky 参与文档流占位,避免 fixed 遮挡首条订单 */
+.order-page--shop-nav .order-tabs {
+  position: sticky;
+  left: auto;
+  right: auto;
+}
+
 .order-tab-item {
 .order-tab-item {
   flex: 1;
   flex: 1;
   display: flex;
   display: flex;
@@ -606,9 +614,15 @@ export default {
 }
 }
 
 
 .order-body {
 .order-body {
+  /* Tab 88 + 店铺筛选栏约 90 */
   padding-top: 178upx;
   padding-top: 178upx;
 }
 }
 
 
+/* 店铺模式:Tab 已占位,列表仅保留与 Tab 的 10upx 间距 */
+.order-body--shop-nav {
+  padding-top: 10upx;
+}
+
 .pay_list {
 .pay_list {
   padding-bottom: 100upx;
   padding-bottom: 100upx;
 }
 }