yuany 4 年之前
父節點
當前提交
fa59f7e70b

+ 1 - 1
.env.development

@@ -1,4 +1,4 @@
-VUE_APP_BASE_URL=https://njnft.izouma.com/
+VUE_APP_BASE_URL=http://47.99.216.95/
 NODE_ENV=development
 VUE_APP_PUBLIC_PATH=/
 ASSETS_PATH=raex

+ 3 - 3
src/components/CollectionList.vue

@@ -4,9 +4,9 @@
         <van-image width="100%" height="164px" :src="getImg(info.pic[0].url)" fit="cover" />
         <!-- <van-image width="100%" height="calc(50vw - 24px)" :src="getImg(changeImgs(info.pic, 600))" fit="cover" class="current_recommendation_img"/> -->
         <div class="current_recommendation_title">{{ info.name }}</div>
-        <div class="current_recommendation_price" :style="{ 'padding-left': info.salable ? '18px' : '9px' }">
+        <div class="current_recommendation_price" :style="{ 'padding-left': info.salable ? '16px' : '9px' }">
             <div v-if="info.salable">
-                <div class="current_recommendation_price_one"></div>
+                <div class="current_recommendation_price_one">¥</div>
                 <div class="current_recommendation_price_two">{{ info.price }}</div>
             </div>
             <div v-else class="showOnly">仅展示</div>
@@ -149,7 +149,7 @@ export default {
             font-weight: 500;
             color: #28b6ff;
             position: absolute;
-            bottom: 1px;
+            bottom: 0px;
             left: 8px;
         }
         .current_recommendation_price_two {

+ 2 - 1
src/components/product/productLarge.vue

@@ -107,7 +107,7 @@ export default {
 <style lang="less" scoped>
 .shop_list {
     width: 100%;
-            height: 449px;
+            height: 455px;
             background: #29293f;
             border-radius: 20px;
             margin-bottom: 20px;
@@ -153,6 +153,7 @@ export default {
                 border-radius: 30px;
             }
             .shop_title {
+                margin-bottom: 6px;
                 padding: 10px 16px 6px 16px;
                 box-sizing: border-box;
                 font-size: 14px;

+ 112 - 78
src/views/Discover.vue

@@ -1,66 +1,86 @@
 <template>
     <!-- 顶部导航栏 -->
     <!-- <TopNavigation/> -->
-    <div
-        class="explore_content"
-        :class="
-            (currentRecommendationList.length < 3 && hotCollectionList.length == 0) ||
-            (currentRecommendationList.length == 0 && hotCollectionList.length < 3)
-                ? 'shop_list_one'
-                : ''
-        "
+    <!-- 搜素 -->
+    <van-pull-refresh
+        success-text="加载成功"
+        success-duration="1000"
+        class="discover"
+        v-model="isLoading"
+        @refresh="onRefresh"
     >
-        <!-- 搜素 -->
-        <div class="search" @click="$router.push('/productSearch')">
-            <img src="@assets/icon-sosuo.png" alt="" class="search_img" />
-            <span class="search_text">搜索你想要的</span>
-        </div>
-        <!-- 商品展示 -->
-        <div class="commodity_display">
-            <!-- <van-swipe :loop="false" :width="94" :height="90" :show-indicators="false">
+        <van-sticky :offset-top="0">
+            <div class="search_con">
+                <div class="search" @click="$router.push('/productSearch')">
+                    <img src="@assets/icon-sosuo.png" alt="" class="search_img" />
+                    <span class="search_text">搜索你想要的</span>
+                </div>
+            </div>
+        </van-sticky>
+        <div
+            class="explore_content"
+            :class="
+                (currentRecommendationList.length < 3 && hotCollectionList.length == 0) ||
+                (currentRecommendationList.length == 0 && hotCollectionList.length < 3)
+                    ? 'shop_list_one'
+                    : ''
+            "
+        >
+            <!-- 商品展示 -->
+            <div class="commodity_display">
+                <!-- <van-swipe :loop="false" :width="94" :height="90" :show-indicators="false">
                 <van-swipe-item v-for="(item, index) in commodityDisplayList" :key="index">
                     <van-image width="94px" height="90px" :src="getImg(item.pic)" fit="cover" />
                 </van-swipe-item>
             </van-swipe> -->
-            <swiper v-if="commodityDisplayList.length > 0" slides-per-view="auto">
-                <swiper-slide class="setting" v-for="item in commodityDisplayList" :key="item.id" style="width: 94px">
-                    <van-image width="94px" height="90px" radius="8" :src="getImg(item.pic)" fit="cover" />
-                </swiper-slide>
-            </swiper>
-        </div>
-        <!-- banner图展示 -->
-        <div class="banner">
-            <div class="banner_con" v-for="(item, index) in bannerList" :key="index" @click="showJump(index)">
-                <img :src="item.img" alt="" class="banner_con_img" />
-                <div class="banner_con_title">
-                    <div class="banner_con_titleone">{{ item.titleone }}</div>
-                    <div class="banner_con_titletwo">{{ item.titletwo }}</div>
-                </div>
+                <swiper v-if="commodityDisplayList.length > 0" slides-per-view="auto">
+                    <swiper-slide
+                        class="setting"
+                        v-for="item in commodityDisplayList"
+                        :key="item.id"
+                        style="width: 94px"
+                    >
+                        <van-image width="94px" height="90px" radius="8" :src="getImg(item.pic)" fit="cover" />
+                    </swiper-slide>
+                </swiper>
             </div>
-        </div>
-        <div class="content_list">
-            <!-- 本期推荐 -->
-            <page-title title="本期推荐" :to="{ path: '/productList', query: { type: 'DEFAULT', title: '本期推荐' } }">
-            </page-title>
-            <div class="current_recommendation">
-                <template v-for="(item, index) in currentRecommendationList" :key="item.id">
-                    <CollectionList v-model:info="currentRecommendationList[index]"></CollectionList
-                ></template>
+            <!-- banner图展示 -->
+            <div class="banner">
+                <div class="banner_con" v-for="(item, index) in bannerList" :key="index" @click="showJump(index)">
+                    <img :src="item.img" alt="" class="banner_con_img" />
+                    <div class="banner_con_title">
+                        <div class="banner_con_titleone">{{ item.titleone }}</div>
+                        <div class="banner_con_titletwo">{{ item.titletwo }}</div>
+                    </div>
+                </div>
             </div>
-            <!-- <List :dataList="currentRecommendationList"></List> -->
-            <!-- 最HOT收藏品 -->
-            <page-title
-                title="最HOT收藏品"
-                :to="{ path: '/productList', query: { type: 'DEFAULT', title: '最HOT收藏品' } }"
-            >
-            </page-title>
-            <div class="current_recommendation">
-                <template v-for="(item, index) in hotCollectionList" :key="item.id">
-                    <CollectionList v-model:info="hotCollectionList[index]"></CollectionList
-                ></template>
+            <div class="content_list">
+                <!-- 本期推荐 -->
+                <page-title
+                    title="本期推荐"
+                    :to="{ path: '/productList', query: { type: 'DEFAULT', title: '本期推荐' } }"
+                >
+                </page-title>
+                <div class="current_recommendation">
+                    <template v-for="(item, index) in currentRecommendationList" :key="item.id">
+                        <CollectionList v-model:info="currentRecommendationList[index]"></CollectionList
+                    ></template>
+                </div>
+                <!-- <List :dataList="currentRecommendationList"></List> -->
+                <!-- 最HOT收藏品 -->
+                <page-title
+                    title="最HOT收藏品"
+                    :to="{ path: '/productList', query: { type: 'DEFAULT', title: '最HOT收藏品' } }"
+                >
+                </page-title>
+                <div class="current_recommendation">
+                    <template v-for="(item, index) in hotCollectionList" :key="item.id">
+                        <CollectionList v-model:info="hotCollectionList[index]"></CollectionList
+                    ></template>
+                </div>
             </div>
         </div>
-    </div>
+    </van-pull-refresh>
 </template>
 
 <script>
@@ -101,6 +121,7 @@ export default {
     data() {
         return {
             page: 0,
+            isLoading: true,
             bannerList: [
                 {
                     img: require('@assets/icon-jingxuan.png'),
@@ -150,8 +171,8 @@ export default {
             if (index == 0) {
                 // this.$router.push( "/productList")
                 this.$router.push({ path: '/productList', query: { title: '精选推荐' } });
-            }else{
-                this.wait()
+            } else {
+                this.wait();
             }
         },
         // 获取图片展示数据
@@ -212,6 +233,12 @@ export default {
                     // this.miners = res.content;
                     console.log('12354664', res.content);
                 });
+        },
+        onRefresh() {
+            this.page = 0;
+            Promise.all([this.getInit(), this.$store.dispatch('getUsedBuy')]).then(res => {
+                this.isLoading = false;
+            });
         }
     },
     activated() {
@@ -363,39 +390,19 @@ export default {
     height: 100%;
     position: absolute;
 }
-.setting {
-    height: 90px;
-    margin-right: 16px;
-}
-.setting:last-child{
-    margin-right: 0px;
-}
-.current_recommendation {
-    width: 100%;
-    display: flex;
-    justify-content: space-between;
-    flex-wrap: wrap;
-}
-.explore_content {
-    width: 100%;
+.discover{
     background: #0f0f27;
-    padding: 12px 16px 16px 16px;
-    // margin-top: 44px;
+}
+.search_con {
+    padding: 12px 16px 24px 16px;
     box-sizing: border-box;
-    /deep/ .van-cell__title span {
-        color: #ffffff;
-    }
-    /deep/ .van-cell {
-        padding: 4px 0px 8px 2px;
-        box-sizing: border-box;
-    }
+    background: #0f0f27;
     .search {
         width: 100%;
         height: 32px;
         background: #29293f;
         border-radius: 4px;
         padding: 5px 0 4px 33px;
-        margin-bottom: 24px;
         box-sizing: border-box;
         position: relative;
         .search_img {
@@ -412,6 +419,33 @@ export default {
             color: #5f646f;
         }
     }
+}
+.setting {
+    height: 90px;
+    margin-right: 16px;
+}
+.setting:last-child {
+    margin-right: 0px;
+}
+.current_recommendation {
+    width: 100%;
+    display: flex;
+    justify-content: space-between;
+    flex-wrap: wrap;
+}
+.explore_content {
+    width: 100%;
+    background: #0f0f27;
+    padding: 0px 16px 16px 16px;
+    // margin-top: 44px;
+    box-sizing: border-box;
+    /deep/ .van-cell__title span {
+        color: #ffffff;
+    }
+    /deep/ .van-cell {
+        padding: 4px 0px 8px 2px;
+        box-sizing: border-box;
+    }
     /deep/ .van-swipe__track {
         width: 100%;
     }

+ 49 - 33
src/views/Home.vue

@@ -1,14 +1,21 @@
 <template>
-    <div class="home">
-        <div class="contect" :class="shopList.length < 2 ? 'shop_list_one' : ''">
-            <!-- 首页轮播 -->
-            <van-swipe class="swipe_banner" :autoplay="3000" indicator-color="#ffffff">
-                <van-swipe-item v-for="(item, index) in banners" :key="index">
-                    <!-- <img :src="item.pic" alt="" class="swipe_banner_img" /> -->
-                    <van-image width="100%" height="140px" :src="getImg(item.pic)" fit="cover" />
-                </van-swipe-item>
-            </van-swipe>
-            <!-- <swiper
+    <van-pull-refresh
+        class="home_refresh"
+        success-text="加载成功"
+        success-duration="1000"
+        v-model="isLoading"
+        @refresh="onRefresh"
+    >
+        <div class="home">
+            <div class="contect" :class="shopList.length < 2 ? 'shop_list_one' : ''">
+                <!-- 首页轮播 -->
+                <van-swipe class="swipe_banner" :autoplay="3000" indicator-color="#ffffff">
+                    <van-swipe-item v-for="(item, index) in banners" :key="index">
+                        <!-- <img :src="item.pic" alt="" class="swipe_banner_img" /> -->
+                        <van-image width="100%" height="140px" :src="getImg(item.pic)" fit="cover" />
+                    </van-swipe-item>
+                </van-swipe>
+                <!-- <swiper
             pagination
             class="swipe_banner"
             :slidesPerView="'auto'"
@@ -20,25 +27,25 @@
                     <product-small :info="item"></product-small>
                 </swiper-slide>
             </swiper> -->
-            <!-- 商品列表 -->
-            <div class="collection_list">
-                <!-- <van-list v-model:loading="loading" :finished="finished" finished-text="" @load="getList"> -->
-                <!-- @load="getList" -->
-                <product-large
-                v-for="(item, index) in shopList"
-                :key="index"
-                v-model:info="shopList[index].obj"
-                :type="item.type"
-                ></product-large>
-            <!-- </van-list> -->
+                <!-- 商品列表 -->
+                <div class="collection_list">
+                    <!-- <van-list v-model:loading="loading" :finished="finished" finished-text="" @load="getList"> -->
+                    <!-- @load="getList" -->
+                    <product-large
+                        v-for="(item, index) in shopList"
+                        :key="index"
+                        v-model:info="shopList[index].obj"
+                        :type="item.type"
+                    ></product-large>
+                    <!-- </van-list> -->
+                </div>
             </div>
-        </div>
-        <!-- <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
+            <!-- <van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
              <van-swipe-item v-for="item in banners" :key="item.id">
                  <img :src="item.img" alt="">
              </van-swipe-item>
         </van-swipe> -->
-        <!-- <swiper
+            <!-- <swiper
             pagination
             class="mySwiper"
             :slidesPerView="'auto'"
@@ -50,7 +57,7 @@
                 <img :src="item.img" alt="">
             </swiper-slide>
         </swiper> -->
-        <!-- <div class="filter-bg" :style="{ backgroundImage: `url(${bgImg})` }"></div>
+            <!-- <div class="filter-bg" :style="{ backgroundImage: `url(${bgImg})` }"></div>
         <div class="welcom">
             <div class="left">
                 <div class="text1">WELCOME</div>
@@ -78,12 +85,12 @@
             </swiper-slide>
         </swiper> -->
 
-        <!-- <div class="tabs" v-if="!empty">
+            <!-- <div class="tabs" v-if="!empty">
             <div class="tab" :class="{ active: active === 0 }" @click="active = 0">数字藏品</div>
             <div class="tab" :class="{ active: active === 1 }" @click="active = 1">产品新闻端</div>
         </div> -->
 
-        <!-- <div class="list" v-if="active == 0">
+            <!-- <div class="list" v-if="active == 0">
             <product-large
                 v-for="(item, index) in products"
                 :key="index"
@@ -96,7 +103,8 @@
                 <news-info v-for="item in news" :key="item.id" :info="item"></news-info>
             </van-list>
         </template> -->
-    </div>
+        </div>
+    </van-pull-refresh>
 </template>
 <script>
 import product from '../mixins/product';
@@ -111,6 +119,7 @@ export default {
             loading: false,
             finished: false,
             page: 0,
+            isLoading: true
         };
     },
     mixins: [product],
@@ -129,12 +138,12 @@ export default {
                 forbidClick: true
             });
             this.loading = true;
-            this.$http.get('/collection/recommend').then(res=>{
+            this.$http.get('/collection/recommend').then(res => {
                 this.shopList = res.filter(item => {
                     return item.type === 'collection';
-                })
+                });
                 this.$toast.clear();
-            })
+            });
         },
         // 获取首页轮播
         getBanner() {
@@ -156,7 +165,11 @@ export default {
                 });
         },
         getUser() {
-            this.$http.post('user/my').then(res => {
+            this.$http.post('user/my').then(res => {});
+        },
+        onRefresh() {
+            Promise.all([this.getBanner(),this.getList()]).then(res => {
+                this.isLoading = false;
             });
         }
     },
@@ -360,6 +373,9 @@ export default {
 </script>
 
 <style lang="less" scoped>
+.home_refresh{
+    background: #0f0f27;
+}
 .home {
     .contect {
         width: 100%;
@@ -376,7 +392,7 @@ export default {
                 width: 100%;
             }
         }
-        .collection_list{
+        .collection_list {
             margin-bottom: 50px;
         }
     }

+ 75 - 57
src/views/Store.vue

@@ -1,64 +1,72 @@
 <template>
-    <div class="explore_content" :class="collections.length < 5 ? 'shop_list_one' : ''">
-        <!-- 搜素 -->
-        <van-sticky :offset-top="0">
-            <div class="explore_content_top">
-                <div class="search" @click="$router.push('/productSearch')">
-                    <img src="@assets/icon-sosuo.png" alt="" class="search_img" />
-                    <span class="search_text">搜索你想要的</span>
-                </div>
-                <!-- 标签页展示切换 -->
-                <div class="label_tabs">
-                    <div
-                        :class="tabLabel == 'whole' ? 'label_selected' : 'label_not_selected'"
-                        @click="tabLabelName('whole')"
-                        class="label_tab"
-                    >
-                        全部
+    <!-- <van-pull-refresh
+        class="load_refresh"
+        success-text="加载成功"
+        success-duration="1000"
+        v-model="isLoading"
+        @refresh="isRefresh"
+    > -->
+        <div class="explore_content" :class="collections.length < 5 ? 'shop_list_one' : ''">
+            <!-- 搜素 -->
+            <van-sticky :offset-top="0">
+                <div class="explore_content_top">
+                    <div class="search" @click="$router.push('/productSearch')">
+                        <img src="@assets/icon-sosuo.png" alt="" class="search_img" />
+                        <span class="search_text">搜索你想要的</span>
                     </div>
-                    <div
-                        :class="tabLabel == 'onSale' ? 'label_selected' : 'label_not_selected'"
-                        @click="tabLabelName('onSale')"
-                        class="label_tab"
-                    >
-                        出售中
+                    <!-- 标签页展示切换 -->
+                    <div class="label_tabs">
+                        <div
+                            :class="tabLabel == 'whole' ? 'label_selected' : 'label_not_selected'"
+                            @click="tabLabelName('whole')"
+                            class="label_tab"
+                        >
+                            全部
+                        </div>
+                        <div
+                            :class="tabLabel == 'onSale' ? 'label_selected' : 'label_not_selected'"
+                            @click="tabLabelName('onSale')"
+                            class="label_tab"
+                        >
+                            出售中
+                        </div>
+                        <div
+                            :class="tabLabel == 'showOnly' ? 'label_selected' : 'label_not_selected'"
+                            @click="tabLabelName('showOnly')"
+                            class="label_tab"
+                        >
+                            仅展示
+                        </div>
+                        <div
+                            :class="tabLabel == 'notShown' ? 'label_selected' : 'label_not_selected'"
+                            @click="tabLabelName('notShown')"
+                            class="label_tab"
+                        >
+                            未展示
+                        </div>
                     </div>
-                    <div
-                        :class="tabLabel == 'showOnly' ? 'label_selected' : 'label_not_selected'"
-                        @click="tabLabelName('showOnly')"
-                        class="label_tab"
-                    >
-                        仅展示
+                </div>
+            </van-sticky>
+            <div class="data_display">
+                <!-- 藏品展示 -->
+                <van-list v-model:loading="loading" :finished="finished" finished-text="" @load="getAllCollections">
+                    <div class="data_display_fanter">
+                        <template v-for="(item, index) in collections" :key="index">
+                            <asset-info :info="item"></asset-info>
+                        </template>
                     </div>
-                    <div
-                        :class="tabLabel == 'notShown' ? 'label_selected' : 'label_not_selected'"
-                        @click="tabLabelName('notShown')"
-                        class="label_tab"
+                    <van-empty
+                        v-if="empty || (collections.length === 0 && !loading)"
+                        :description="'你还没有藏品哦~'"
+                        :image="require(`@assets/storage_room_icon_01.png`)"
                     >
-                        未展示
-                    </div>
-                </div>
+                        <van-button class="h44" size="small" color="#28B6FF" :round="true" to="/">去逛逛</van-button>
+                    </van-empty>
+                    <!-- </van-empty> -->
+                </van-list>
             </div>
-        </van-sticky>
-        <div class="data_display">
-            <!-- 藏品展示 -->
-            <van-list v-model:loading="loading" :finished="finished" finished-text="" @load="getAllCollections">
-                <div class="data_display_fanter">
-                    <template v-for="(item, index) in collections" :key="index">
-                        <asset-info :info="item"></asset-info>
-                    </template>
-                </div>
-                <van-empty
-                    v-if="empty || (collections.length === 0 && !loading)"
-                    :description="'你还没有藏品哦~'"
-                    :image="require(`@assets/storage_room_icon_01.png`)"
-                >
-                    <van-button class="h44" size="small" color="#28B6FF" :round="true" to="/">去逛逛</van-button>
-                </van-empty>
-                <!-- </van-empty> -->
-            </van-list>
         </div>
-    </div>
+    <!-- </van-pull-refresh> -->
 </template>
 
 <script>
@@ -75,7 +83,8 @@ export default {
             loading: false,
             finished: false,
             // 藏品列表
-            collections: []
+            collections: [],
+            isLoading: true
         };
     },
     computed: {
@@ -127,7 +136,7 @@ export default {
         tabLabelName(title) {
             this.tabLabel = title;
             this.page = 0;
-            this.loading = true
+            this.loading = true;
             this.getAllCollections();
         },
         beforeQuery() {
@@ -156,17 +165,26 @@ export default {
                 };
             }
             return form;
+        },
+        isRefresh() {
+             Promise.all([this.getAllCollections()]).then( res => {
+                this.isLoading = false;
+            });
         }
     }
 };
 </script>
 <style lang="less" scoped>
-/deep/ .van-button{
+.load_refresh{
+    background: #0f0f27;
+}
+/deep/ .van-button {
     width: 280px;
     height: 38px;
 }
 .explore_content {
     width: 100%;
+    height: 100%;
     // margin-top: 44px;
     box-sizing: border-box;
     background: #0f0f27;

+ 61 - 44
src/views/order/Orders.vue

@@ -1,50 +1,58 @@
 <template>
-    <div class="content" :class="list.length < 5 ? 'shop_list_one' : ''">
-        <van-sticky ref="top" :offset-top="bar.value && bar.value.show ? 46 : 0">
-            <div class="my_list">
-                <div class="my_list_con">我的订单</div>
-                <!-- 标签页展示切换 -->
-                <div class="label_tabs">
-                    <div
-                        :class="tabLabel == 'whole' ? 'label_selected' : 'label_not_selected'"
-                        @click="changeStatus('whole')"
-                        class="label_tab"
-                    >
-                        全部
+    <van-pull-refresh
+        class="load_refresh"
+        success-text="加载成功"
+        success-duration="1000"
+        v-model="isLoading"
+        @refresh="onRefresh"
+    >
+        <div class="content" :class="list.length < 5 ? 'shop_list_one' : ''">
+            <van-sticky ref="top" :offset-top="bar.value && bar.value.show ? 46 : 0">
+                <div class="my_list">
+                    <div class="my_list_con">我的订单</div>
+                    <!-- 标签页展示切换 -->
+                    <div class="label_tabs">
+                        <div
+                            :class="tabLabel == 'whole' ? 'label_selected' : 'label_not_selected'"
+                            @click="changeStatus('whole')"
+                            class="label_tab"
+                        >
+                            全部
+                        </div>
+                        <div
+                            :class="tabLabel == 'inTransaction' ? 'label_selected' : 'label_not_selected'"
+                            @click="changeStatus('inTransaction')"
+                            class="label_tab"
+                        >
+                            交易中
+                        </div>
+                        <div
+                            :class="tabLabel == 'completed' ? 'label_selected' : 'label_not_selected'"
+                            @click="changeStatus('completed')"
+                            class="label_tab"
+                        >
+                            已完成
+                        </div>
                     </div>
-                    <div
-                        :class="tabLabel == 'inTransaction' ? 'label_selected' : 'label_not_selected'"
-                        @click="changeStatus('inTransaction')"
-                        class="label_tab"
-                    >
-                        交易中
-                    </div>
-                    <div
-                        :class="tabLabel == 'completed' ? 'label_selected' : 'label_not_selected'"
-                        @click="changeStatus('completed')"
-                        class="label_tab"
-                    >
-                        已完成
-                    </div>
-                </div>
-                <!-- <van-tabs v-model:active="status" :ellipsis="false" line-width="16" line-height="2" @click="changeStatus">
+                    <!-- <van-tabs v-model:active="status" :ellipsis="false" line-width="16" line-height="2" @click="changeStatus">
                 <van-tab v-for="(item, index) in tabs" :key="index" :title="item.name" :name="item.status"></van-tab>
                 </van-tabs> -->
-            </div>
-        </van-sticky>
-        <van-list class="list" v-model:loading="loading" :finished="finished" finished-text="" @load="getData">
-            <div class="list_display">
-                <order-info @delFn="delFn" v-for="item in list" :key="item.id" :info="item"></order-info>
-            </div>
-            <van-empty
-                v-if="empty"
-                description="你还有没有订单哦~"
-                :image="require('@assets/navigation bar_lose.png')"
-            >
-                <van-button class="h44" size="small" color="#28B6FF" :round="true" to="/">去逛逛</van-button>
-            </van-empty>
-        </van-list>
-    </div>
+                </div>
+            </van-sticky>
+            <van-list class="list" v-model:loading="loading" :finished="finished" finished-text="" @load="getData">
+                <div class="list_display">
+                    <order-info @delFn="delFn" v-for="item in list" :key="item.id" :info="item"></order-info>
+                </div>
+                <van-empty
+                    v-if="empty"
+                    description="你还有没有订单哦~"
+                    :image="require('@assets/navigation bar_lose.png')"
+                >
+                    <van-button class="h44" size="small" color="#28B6FF" :round="true" to="/">去逛逛</van-button>
+                </van-empty>
+            </van-list>
+        </div>
+    </van-pull-refresh>
 </template>
 
 <script>
@@ -78,7 +86,8 @@ export default {
             //         name: '已完成'
             //     }
             // ],
-            url: '/order/all'
+            url: '/order/all',
+            isLoading: true
         };
     },
     mounted() {
@@ -123,6 +132,11 @@ export default {
                 }
             });
             this.getData(true);
+        },
+        onRefresh() {
+            this.getData(true).then( res => {
+                this.isLoading = false;
+            });
         }
         // changeActive(type) {
         //     this.$router.replace({
@@ -140,6 +154,9 @@ export default {
 </script>
 
 <style lang="less" scoped>
+.load_refresh{
+    background: #0f0f27;
+}
 /deep/ .van-button {
     width: 280px;
     height: 38px;

+ 2 - 1
src/views/product/Detail.vue

@@ -315,7 +315,7 @@
                 <div class="detail_content_share_con">分享</div>
             </div>
         </div> -->
-        <div class="detail_content_title">{{ info.title }}</div>
+        <div class="detail_content_title">{{ info.name }}</div>
         <div class="limited_label">
             <div class="limited_label_name">限量</div>
             <div class="limited_label_number">{{ info.total }}份</div>
@@ -877,6 +877,7 @@ export default {
         padding: 0 20px;
         box-sizing: border-box;
         font-size: 18px;
+        margin-top: -25px;
         font-family: PingFangSC-Regular, PingFang SC;
         font-weight: 400;
         color: #ffffff;

+ 35 - 17
src/views/user/myLove.vue

@@ -1,27 +1,38 @@
 <template>
     <!-- <TopNavigation/> -->
-    <div class="content" :class="showList.length<5? 'shop_list_one' : ''">
-        <van-sticky :offset-top="0">
-            <div class="content_top">我喜欢的</div>
-        </van-sticky>
-        <div class="current_recommendation">
-            <template v-for="(item, index) in showList" :key="index">
-                <CollectionList v-model:info="list[item.index]" @update:info="init"></CollectionList>
-            </template>
+    <van-pull-refresh
+        class="load_refresh"
+        success-text="加载成功"
+        success-duration="1000"
+        v-model="isLoading"
+        @refresh="onRefresh"
+    >
+        <div class="content" :class="showList.length<5? 'shop_list_one' : ''">
+            <van-sticky :offset-top="bar.value && bar.value.show ? 46 : 0">
+                <div class="content_top">我喜欢的</div>
+            </van-sticky>
+            <div class="current_recommendation">
+                <template v-for="(item, index) in showList" :key="index">
+                    <CollectionList v-model:info="list[item.index]" @update:info="init"></CollectionList>
+                </template>
+            </div>
+            <van-empty
+                    v-if="showList.length === 0"
+                    description="你还没有点赞哦~"
+                    :image="require('@assets/kong_png_dianzan.png')"
+            />
         </div>
-        <van-empty
-                v-if="showList.length === 0"
-                description="你还没有点赞哦~"
-                :image="require('@assets/kong_png_dianzan.png')"
-        />
-    </div>
+    </van-pull-refresh>
 </template>
 
 <script>
 import CollectionList from "../../components/CollectionList.vue"
+import product from '../../mixins/product';
 // import TopNavigation from "../../components/TopNavigation.vue"
 // import ProductInfo from '../../components/product/productInfo.vue';
 export default {
+    mixins: [product],
+    inject: ['bar'],
     components:{
         CollectionList,
         // TopNavigation,
@@ -31,6 +42,7 @@ export default {
         return {
             list: [],
             empty: false,
+            isLoading: true
         };
     },
     computed: {
@@ -62,18 +74,24 @@ export default {
         },
         change() {
             this.$root.$el.scrollTop = 0;
+        },
+        onRefresh() {
+            Promise.all([this.init()]).then(res => {
+                this.isLoading = false;
+            });
         }
     }
 }
 </script>
 
 <style lang="less" scoped>
+    .load_refresh{
+        background: #0A0A1B;
+    }
     .content{
         width: 100%;
-        // height: 100%;
-        // position: absolute;
+        height: 100%;
         background: #0A0A1B;
-        // margin-top: 44px;
         .content_top{
             width: 100%;
             padding: 16px;

+ 1 - 1
src/views/user/myOrder.vue

@@ -3,7 +3,7 @@
     <TopNavigation/>
     <!-- 我的列表 -->
     <div class="content">
-        <van-sticky :offset-top="44">
+        <van-sticky :offset-top="bar.value && bar.value.show ? 46 : 0">
             <div class="my_list">
                 <div class="my_list_con">我的订单</div>
                 <!-- 标签页展示切换 -->