chore:查看我的关注,加去逛逛按钮,点击售后,标题应展示“售后”,无数据时界面应展示“暂无售后记录”

This commit is contained in:
2026-01-06 18:13:23 +08:00
parent 6023b5b65e
commit 8e337da21e
2 changed files with 93 additions and 65 deletions

View File

@@ -1,6 +1,6 @@
export const lang = {
//title为每个页面的标题
title: '退款',
title: '售后',
checkDetail: '查看详情',
emptyTips: '暂无退款记录'
emptyTips: '暂无售后记录'
}

View File

@@ -1,87 +1,115 @@
<template>
<view :style="themeColor">
<mescroll-uni ref="mescroll" @getData="getData" class="member-point" :size="8" @listenRefresh="listenRefresh"
v-if="storeToken">
<view class="goods_list" slot="list">
<block v-if="collectionList.length > 0">
<view class="goods_li margin-top" v-for="(item, index) in collectionList" :key="index"
@click.stop="toDetail(item)">
<view class="pic">
<image :src="$util.img(item.goods_image.split(',')[0], { size: 'mid' })" mode="aspectFill"
@error="goodsImageError(index)"></image>
</view>
<view class="goods_info">
<view class="goods_name font-size-base">{{ item.sku_name }}</view>
<view class="goods_opection">
<view class="left lineheight-clear ">
<text class="symbol price-style small"></text>
<text class="price price-style large">{{
parseFloat(item.discount_price).toFixed(2).split('.')[0] }}</text>
<text class="symbol price-style small">.{{
parseFloat(item.discount_price).toFixed(2).split('.')[1] }}</text>
</view>
<view class="right">
<view class="cars" @click.stop="deleteItem(item.goods_id)">
<view class="icon iconfont icon-icon7"></view>
</view>
</view>
</view>
</view>
</view>
</block>
<!-- 第一个列表为空时 -->
<ns-empty v-if="collectionList.length == 0 && isShowEmpty" text="暂无关注的商品" :isIndex="false"></ns-empty>
<ns-goods-recommend ref="goodsRecommend"></ns-goods-recommend>
</view>
</mescroll-uni>
<ns-login ref="login"></ns-login>
<loading-cover ref="loadingCover"></loading-cover>
</view>
<view :style="themeColor">
<mescroll-uni ref="mescroll" @getData="getData" class="member-point" :size="8" @listenRefresh="listenRefresh"
v-if="storeToken">
<view class="goods_list" slot="list">
<block v-if="collectionList.length > 0">
<view class="goods_li margin-top" v-for="(item, index) in collectionList" :key="index"
@click.stop="toDetail(item)">
<view class="pic">
<image :src="$util.img(item.goods_image.split(',')[0], { size: 'mid' })" mode="aspectFill"
@error="goodsImageError(index)"></image>
</view>
<view class="goods_info">
<view class="goods_name font-size-base">{{ item.sku_name }}</view>
<view class="goods_opection">
<view class="left lineheight-clear ">
<text class="symbol price-style small"></text>
<text class="price price-style large">{{
parseFloat(item.discount_price).toFixed(2).split('.')[0] }}</text>
<text class="symbol price-style small">.{{
parseFloat(item.discount_price).toFixed(2).split('.')[1] }}</text>
</view>
<view class="right">
<view class="cars" @click.stop="deleteItem(item.goods_id)">
<view class="icon iconfont icon-icon7"></view>
</view>
</view>
</view>
</view>
</view>
</block>
<!-- 第一个列表为空时 -->
<view v-if="collectionList.length == 0 && isShowEmpty" class="empty-with-btn">
<ns-empty text="暂无关注的商品" :isIndex="false"></ns-empty>
<button class="go-browse-btn" @click="goToBrowse">去逛逛</button>
</view>
<ns-goods-recommend ref="goodsRecommend"></ns-goods-recommend>
</view>
</mescroll-uni>
<ns-login ref="login"></ns-login>
<loading-cover ref="loadingCover"></loading-cover>
</view>
</template>
<script>
import collection from './public/js/collection.js';
export default {
mixins: [collection],
data() {
return {};
},
onShow() {
if (this.storeToken) {
if (this.$refs.mescroll) this.$refs.mescroll.refresh();
} else {
this.$nextTick(() => {
this.$refs.login.open('/pages_tool/member/collection');
});
}
},
watch: {
storeToken: function (nVal, oVal) {
if (nVal) {
this.$refs.mescroll.refresh();
}
}
}
mixins: [collection],
data() {
return {};
},
methods: {
goToBrowse() {
// 跳转到首页
uni.switchTab({
url: '/pages/index/index'
});
}
},
onShow() {
if (this.storeToken) {
if (this.$refs.mescroll) this.$refs.mescroll.refresh();
} else {
this.$nextTick(() => {
this.$refs.login.open('/pages_tool/member/collection');
});
}
},
watch: {
storeToken: function (nVal, oVal) {
if (nVal) {
this.$refs.mescroll.refresh();
}
}
}
};
</script>
<style lang="scss" scoped>
/deep/ .fixed {
position: relative;
top: 0;
position: relative;
top: 0;
}
/deep/ .empty {
margin-top: 0 !important;
margin-top: 0 !important;
}
@import './public/css/collection.scss';
.empty-with-btn {
display: flex;
flex-direction: column;
align-items: center;
padding-top: 40rpx;
}
.go-browse-btn {
width: 200rpx;
height: 60rpx;
line-height: 60rpx;
background-color: #ff2f55;
color: #ffffff;
border-radius: 30rpx;
font-size: 28rpx;
margin-top: 40rpx;
}
</style>
<style lang="scss" scoped>
/deep/ .sku-layer .uni-popup__wrapper.uni-custom .uni-popup__wrapper-box {
max-height: unset !important;
max-height: unset !important;
}
</style>