售后页面添加/评价中心页面添加

This commit is contained in:
邝军华 2025-03-13 20:39:25 +08:00
parent 214f185512
commit 83f266afb6
84 changed files with 5440 additions and 105 deletions

View File

@ -0,0 +1,81 @@
<template>
<view class="main">
<view class="cont flex">
<view class="cont_order_type">
<view class="cont_order_type_name">已完成</view>
<view class="cont_order_type_desc">感谢您的反馈</view>
</view>
<view class="cont_service">
<image class="cont_service_img" src="../../static/service.png" mode="widthFix"></image>
<view class="cont_service_name">联系客服</view>
</view>
</view>
<view class="cont">
<view class="cont_title">售后进度</view>
<view class="cont_step">
<uni-steps :options="step" active-color="#FF0000" direction="column" :active="active"></uni-steps>
</view>
</view>
<view class="cont paddom">
<view class="cont_title cont_border">售后明细</view>
<view class="cont_shop">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_text">
<view class="cont_shop_title">糖醋排骨</view>
<view class="cont_shop_price">实付:<text class="cont_shop_price_f">5.98</text></view>
<view class="cont_shop_desc">实付单价:<text class="cont_shop_desc_price">5.98</text> <text class="cont_shop_desc_num">数量:1</text></view>
</view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">售后数量</view>
<view class="cont_shop_item_value">1</view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">退款金额</view>
<view class="cont_shop_item_value">已退<text class="cont_shop_item_value_price">5.98</text></view>
</view>
</view>
<view class="cont paddom">
<view class="cont_title cont_border">售后订单信息</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">售后单号</view>
<view class="cont_shop_item_value"><text class="cont_shop_item_copy">复制</text>35758859599447</view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">申请时间</view>
<view class="cont_shop_item_value">2025/06/09 20:13</view>
</view>
</view>
<view style="height: 200rpx;"></view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const active = ref(0);
const step = ref([
{title:'售后申请已提交成功,客服将全力为您解决问题,请您耐心等待',desc:'2025/06/29 20:15'},
{title:'售后申请已被受理,客服正在加速为您解决问题',desc:'2025/06/29 20:15'},
{title:'您的退款申请已审核通过,商品无需退回',desc:'2025/06/29 20:15'},
{title:'已将退款资金提交给原支付平台处理预计将在3个工作日内到账。具体以原支付平台处理结果为准',desc:'2025/06/29 20:15'},
{title:'退款已到账,请您注意查收,如有问题请联系客服',desc:'2025/06/29 20:15'},
])
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

142
order/assDetail/style.scss Normal file
View File

@ -0,0 +1,142 @@
page{
background-color: #f6f6f6;
}
.main{
.cont{
margin: 20rpx 20rpx 0 20rpx;
padding: 25rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
overflow: hidden;
.cont_order_type{
.cont_order_type_name{
font-size: 40rpx;
color: #333333;
font-weight: 500;
}
.cont_order_type_desc{
color: #333333;
font-size: 26rpx;
margin-top: 10rpx;
}
}
.cont_service{
.cont_service_img{
margin: 0 auto;
width: 76rpx;
height: 76rpx;
display: block;
}
.cont_service_name{
font-size: 24rpx;
color: #333333;
margin-top: 10rpx;
}
}
}
.flex{
display: flex;
align-items: center;
justify-content: space-between;
}
.cont_title{
font-size:32rpx;
color:#333333;
font-weight: 500;
padding-bottom: 25rpx;
}
.cont_border{
border-bottom: 1rpx solid #f6f6f6;
margin-bottom: 25rpx;
}
.cont_shop{
display: flex;
margin-bottom: 25rpx;
.cont_shop_img{
width: 138rpx;
height: 138rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
.cont_shop_imgUrl{
width: 138rpx;
height: 138rpx;
display: block;
}
}
.cont_shop_text{
margin-left: 20rpx;
.cont_shop_title{
font-size: 28rpx;
color: #333333;
font-weight: 500;
}
.cont_shop_price{
color: #333333;
font-size: 26rpx;
margin-top: 10rpx;
.cont_shop_price_f::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
}
.cont_shop_desc{
font-size: 26rpx;
color: #999999;
margin-top: 5rpx;
.cont_shop_desc_price::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
.cont_shop_desc_num{
margin-left: 40rpx;
}
}
}
}
.cont_shop_item{
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 25rpx;
.cont_shop_item_name{
color: #333333;
font-size: 26rpx;
}
.cont_shop_item_value{
color: #333333;
font-size: 26rpx;
font-weight: 500;
display: flex;
align-items: center;
.cont_shop_item_copy{
width: 77rpx;
height: 40rpx;
border-radius: 20rpx 20rpx 20rpx 20rpx;
border: 1rpx solid #FF0000;
font-size: 22rpx;
color:#FF0000;
display: flex;
align-items: center;
justify-content: center;
margin-right: 20rpx;
}
.cont_shop_item_value_price::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
}
}
.paddom{
padding-bottom: 0rpx;
}
}

67
order/assList/assList.vue Normal file
View File

@ -0,0 +1,67 @@
<template>
<view class="main">
<view class="order_nav">
<view class="order_nav_item" v-for="(item,index) in tab" :key="index" :class="active == index?'order_nav_active':''" @click="clickOrder(index)">
<view class="order_nav_name">{{item}}</view>
<view class="order_nav_m"></view>
</view>
</view>
<view class="cont">
<view class="cont_title">下单时间: 2025/03/06 18:00</view>
<view class="cont_shop" @click="assDetail()">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_m">
<view class="cont_shop_title">泡椒田鸡</view>
<view class="cont_shop_text">实付单价:<text class="cont_shop_price">9.99</text> <text class="cont_shop_num">数量:1</text></view>
</view>
</view>
<view :class="active == 0?'cont_shop_r':'cont_shop_n'" >{{active == 0 ?'申请售后':'已完成'}}</view>
</view>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const tab = ref(['售后申请','售后记录']);
const active = ref(0);
const clickOrder=(index)=>{
if(index == active.value) return false;
active.value = index;
};
const assDetail=()=>{
if(active.value == 0){
uni.navigateTo({
url:`/order/assedit/assedit`
})
}else{
uni.navigateTo({
url:`/order/assDetail/assDetail`
})
}
};
onLoad((options) => {
const { type } = options;
if(type == 0 || type == 1){active.value = type;}
});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

178
order/assList/style.scss Normal file
View File

@ -0,0 +1,178 @@
page{
background-color: #f6f6f6;
}
.main{
.order_nav{
width: 100%;
display: flex;
justify-content: space-around;
background-color: #ffffff;
position: sticky;
border-bottom: 1rpx solid #f6f6f6;
top: 0;
.order_nav_item{
font-size: 28rpx;
width: 50%;
padding-top: 20rpx;
.order_nav_name{
width: 100%;
text-align: center;
height: 38rpx;
color: #666666;
display: flex;
align-items: center;
justify-content: center;
}
.order_nav_m{
margin: 0 auto;
width: 45rpx;
height: 20rpx;
display: block;
}
}
.order_nav_active{
.order_nav_name{
font-size: 32rpx;
color: #333333;
font-weight: 500;
}
.order_nav_m{
background: url(../../static/act.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
}
}
.cont{
margin: 20rpx 20rpx 0 20rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
padding: 0 0rpx 25rpx 0rpx;
.cont_title{
font-size: 26rpx;
color: #999999;
margin: 0 25rpx 0 25rpx;
padding:25rpx 0 25rpx 0;
border-bottom: 1rpx solid #f6f6f6;
}
.cont_shop{
display: flex;
align-items: center;
justify-content: space-between;
padding: 25rpx 25rpx 0rpx 25rpx ;
.cont_shop_l{
display: flex;
.cont_shop_img{
width: 114rpx;
height: 114rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
.cont_shop_imgUrl{
width: 114rpx;
height: 114rpx;
display: block;
}
}
.cont_shop_m{
margin-left: 25rpx;
.cont_shop_title{
font-size: 28rpx;
color: #333333;
font-weight: 500;
}
.cont_shop_text{
font-size: 26rpx;
color: #999999;
margin-top: 20rpx;
.cont_shop_price::before{
content:'¥';
font-size: 20rpx;
margin: 0rpx 5rpx 0rpx 5rpx;
}
.cont_shop_num{
margin-left: 20rpx;
}
}
}
}
.cont_shop_r{
width: 150rpx;
height: 60rpx;
border-radius: 50rpx;
border: 1rpx solid #999999;
font-size: 24rpx;
color: #666666;
display: flex;
align-items: center;
justify-content: center;
}
.cont_shop_n{
height: 60rpx;
border-radius: 50rpx;
font-size: 26rpx;
color: #666666;
display: flex;
align-items: center;
justify-content: center;
position: relative;
margin-right: 25rpx;
}
.cont_shop_n::after{
content: '';
position: absolute;
top: 50%;
left: 100%;
transform: translate3d(0, -50%, 0) rotate(45deg);
width: 13rpx;
height: 13rpx;
border-top: 3rpx solid #999999;
border-right: 3rpx solid #999999;
}
}
.cont_goos{
display: flex;
align-items: center;
color: #FF0000;
font-size: 26rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
.cont_goos_img{
width: 40rpx;
height: 40rpx;
display: block;
margin-right: 10rpx;
}
}
.cont_text{
color: #333333;
font-size: 26rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
}
.cont_ul{
display: flex;
flex-wrap: wrap;
.cont_li{
width: 150rpx;
height: 150rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
margin-left: 20rpx;
margin-top: 25rpx;
}
.cont_li image{
width: 150rpx;
height: 150rpx;
border-radius: 4rpx;
display: block;
}
}
}
}

84
order/assedit/assedit.vue Normal file
View File

@ -0,0 +1,84 @@
<template>
<view class="main">
<view class="cont">
<textarea class="cont_textarea" :disable-default-padding="isIos" placeholder="请填写您的退款理由~"></textarea>
</view>
<view class="cont cont_padding">
<view class="cont_item">
<view class="cont_item_l">
<image class="cont_item_img" src="../../static/ass/money.png" mode="widthFix"></image>
<view class="cont_item_text">退款金额</view>
</view>
<view class="cont_item_r"><input class="cont_item_input" type="digit" placeholder="请输入金额"/><text></text></view>
</view>
<view class="cont_border"></view>
<view class="cont_item">
<view class="cont_item_l">
<image class="cont_item_img" src="../../static/ass/phone.png" mode="widthFix"></image>
<view class="cont_item_text">联系方式</view>
</view>
<view class="cont_item_r"><input class="cont_item_input" type="number" placeholder="请输入电话号码"/></view>
</view>
<view class="cont_border"></view>
<view class="cont_item">
<view class="cont_item_l">
<image class="cont_item_img" src="../../static/ass/img.png" mode="widthFix"></image>
<view class="cont_item_text">照片</view>
</view>
</view>
<view class="cont_shop_text">请将菜品图上传</view>
<view class="cont_shop_edit">
<view class="cont_ul">
<view class="cont_li">
<view class="cont_upload_remove">
<image class="cont_upload_remove_img" src="../../static/eval/closeImg.png" mode="widthFix"></image>
</view>
<image class="cont_li_img" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li cont_upload">
<image class="cont_upload_img" src="../../static/ass/uploading.png" mode="widthFix"></image>
<view class="cont_upload_text">添加照片</view>
</view>
</view>
</view>
</view>
<view style="height: 200rpx;"></view>
<view class="footer">
<view class="footer_btn">提交</view>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const isIos = ref(false);
const System = () =>{
const phone = wx.getSystemInfoSync();
if (phone.platform == 'ios') {
isIos.value = true
} else if (phone.platform == 'android') {
isIos.value = false
}
};
onLoad((options) => {
System();
});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

170
order/assedit/style.scss Normal file
View File

@ -0,0 +1,170 @@
page{
background: #f6f6f6;
}
.main{
background: linear-gradient(180deg,#FCEEEF 0%,#f6f6f6 100%);
background-repeat: no-repeat;
padding-top: 25rpx;
.cont{
margin: 0rpx 25rpx 25rpx 25rpx;
padding: 30rpx;
border-radius: 16rpx;
background-color: #FFFFFF;
box-shadow: 0rpx 4rpx 8rpx 0rpx rgba(0, 0, 0, 0.05);
.cont_textarea{
width: 100%;
height: 100rpx;
font-size: 28rpx;
color: #333333;
}
.cont_item{
display: flex;
align-items: center;
justify-content: space-between;
height: 120rpx;
padding: 0 30rpx 0 30rpx;
.cont_item_l{
display: flex;
height: 100%;
align-items: center;
.cont_item_img{
width: 42rpx;
height: 42rpx;
display: block;
}
.cont_item_text{
color: #000000;
font-size: 30rpx;
font-weight: 500;
margin-left: 20rpx;
height: 100%;
display: flex;
align-items: center;
}
.cont_item_text::before{
content: '*';
font-size: 26rpx;
color: #FF0000;
margin-right: 5rpx;
}
}
.cont_item_r{
color: #333333;
font-size: 28rpx;
display: flex;
align-items: center;
height: 100%;
.cont_item_input{
width: 350rpx;
text-align: right;
height: 100%;
}
}
.cont_item_r text{
margin-left: 20rpx;
font-weight: 500;
}
}
.cont_border{
height: 1rpx;
background-color: #D5D5D5;
margin-left: 75rpx;
width: 600rpx;
}
.cont_shop_text{
font-size: 30rpx;
color: #999999;
padding:0rpx 30rpx 30rpx 30rpx;
}
.cont_shop_edit{
border-radius: 16rpx;
.cont_ul{
display: flex;
flex-wrap: wrap;
.cont_li{
width: 192rpx;
height: 192rpx;
background: #FFFFFF;
border-radius: 23rpx;
border: 1px solid #F3F3F3;
margin-left: 30rpx;
margin-bottom: 30rpx;
position: relative;
.cont_upload_remove{
position: absolute;
z-index: 2;
width: 40rpx;
height: 40rpx;
right: -12rpx;
top: -12rpx;
border-radius: 50rpx;
background-color: #FFFFFF;
.cont_upload_remove_img{
width: 40rpx;
height: 40rpx;
border-radius: 50rpx;
}
}
.cont_li_img{
width: 192rpx;
height: 192rpx;
border-radius: 4rpx;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
}
.cont_upload{
background-color: #F4F6F8;
.cont_upload_img{
margin: 0 auto;
width: 80rpx;
height: 80rpx;
display: block;
margin-top: 35rpx;
}
.cont_upload_text{
text-align: center;
color: #999999;
font-size: 24rpx;
margin-top: 10rpx;
}
}
}
}
}
.cont_padding{
padding: 0;
}
.footer{
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 160;
background: #FFFFFF;
font-size: 30rpx;
padding-bottom: env(safe-area-inset-bottom);
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 20rpx;
padding-left: 20rpx;
padding-right: 20rpx;
border-top: 1rpx solid #efefef;
.footer_btn{
width: 100%;
height: 85rpx;
background-color: #FD3F3F;
border-radius: 50rpx;
color: #FFFFFF;
display: flex;
align-items: center;
justify-content: center;
font-weight: 500;
font-size: 28rpx;
}
}
}

61
order/coupon/coupon.vue Normal file
View File

@ -0,0 +1,61 @@
<template>
<view class="main">
<view class="coupon_title">可使用券(2)</view>
<view class="coupon_cont">
<view class="coupon_item">
<view class="coupon_item_l">
<view class="coupon_item_absolute"></view>
<view class="coupon_item_v">
<view class="coupon_item_price">5</view>
<view class="coupon_item_desc">满39可用</view>
</view>
</view>
<view class="coupon_item_border"></view>
<view class="coupon_item_r">
<view class="coupon_item_r_l">
<view class="coupon_item_name">新人限时券</view>
<view class="coupon_item_time">今日23:59到期</view>
</view>
<view class="coupon_item_r_r">领取</view>
</view>
</view>
<view class="coupon_item">
<view class="coupon_item_l">
<view class="coupon_item_absolute"></view>
<view class="coupon_item_v">
<view class="coupon_item_price">10</view>
<view class="coupon_item_desc">满59可用</view>
</view>
</view>
<view class="coupon_item_border"></view>
<view class="coupon_item_r">
<view class="coupon_item_r_l">
<view class="coupon_item_name">新人限时券</view>
<view class="coupon_item_time">今日23:59到期</view>
</view>
<view class="coupon_item_r_r">领取</view>
</view>
</view>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

101
order/coupon/style.scss Normal file
View File

@ -0,0 +1,101 @@
page{
background-color: #f6f6f6;
}
.main{
.coupon_title{
margin: 24rpx 24rpx 0rpx 24rpx;
padding: 0 24rpx 24rpx 24rpx ;
font-size: 28rpx;
color: #333333;
}
// 优惠券
.coupon_cont{
.coupon_item{
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 24rpx 24rpx 24rpx;
.coupon_item_l{
width: 198rpx;
height: 193rpx;
background: #FFFFFF;
border-radius: 20rpx;
text-align: center;
position: relative;
.coupon_item_v{
position: absolute;
width: 198rpx;
height: 193rpx;
top: 0;
left: 0;
.coupon_item_price{
color: #FF0000;
font-size: 60rpx;
font-weight: 500;
text-align: center;
margin-top: 35rpx;
}
.coupon_item_price::before{
content: '¥';
font-size: 34rpx;
margin-right: 5rpx;
}
.coupon_item_desc{
color: #999999;
font-size: 26rpx;
}
}
.coupon_item_absolute{
position: absolute;
top: 0;
left: 0;
width: 20rpx;
height: 193rpx;
background: #FF0000;
border-top-left-radius: 20rpx;
border-bottom-left-radius: 20rpx;
}
}
.coupon_item_border{
width: 1px;
height: 155rpx;
border-left: 1px dashed #D9D9D9;
background-color: #FFFFFF;
}
.coupon_item_r{
width: 438rpx;
height: 193rpx;
background: #FFFFFF;
border-radius: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 25rpx 0 45rpx;
.coupon_item_r_l{
width: 300rpx;
.coupon_item_name{
font-size: 32rpx;
color: #000000;
font-weight: 500;
}
.coupon_item_time{
color: #FF6E6E;
font-size: 26rpx;
margin-top: 10rpx;
}
}
.coupon_item_r_r{
width: 112rpx;
height: 46rpx;
border-radius: 30rpx;
border: 1px solid #FF0000;
font-size: 26rpx;
color: #FF0000;
display: flex;
align-items: center;
justify-content: center;
}
}
}
}
}

122
order/editeval/editeval.vue Normal file
View File

@ -0,0 +1,122 @@
<template>
<view class="main">
<view class="cont">
<view class="cont_top">
<view class="cont_top_l">
<view class="cont_top_text">商品评价 <text class="cont_top_num">0</text>/2</view>
<view class="cont_top_btn">一键好评</view>
</view>
<view class="cont_top_r">匿名</view>
</view>
<view class="cont_shop">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_x">
<view class="cont_shop_title">泡椒田鸡</view>
<view class="cont_shop_type">
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/negative_aver.png" mode="widthFix"></image>差评</view>
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/ordinary.png" mode="widthFix"></image>一般</view>
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/good.png" mode="widthFix"></image>好评</view>
</view>
</view>
</view>
</view>
<view class="cont_shop_edit">
<view class="cont_text">
<image class="cont_text_img" src="../../static/eval/editeval.png"></image>
<textarea class="cont_textarea" :disable-default-padding="isIos" placeholder="走心评价会创造出更多好货哦~"></textarea>
</view>
<view class="cont_ul">
<view class="cont_li">
<view class="cont_upload_remove">
<image class="cont_upload_remove_img" src="../../static/eval/closeImg.png" mode="widthFix"></image>
</view>
<image class="cont_li_img" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li cont_upload">
<image class="cont_upload_img" src="../../static/eval/adds.png" mode="widthFix"></image>
<view class="cont_upload_text">添加图片</view>
</view>
</view>
</view>
<view class="cont_shop_border"></view>
<view class="cont_shop">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_x">
<view class="cont_shop_title">泡椒田鸡</view>
<view class="cont_shop_type">
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/negative_aver.png" mode="widthFix"></image>差评</view>
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/ordinary.png" mode="widthFix"></image>一般</view>
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/good.png" mode="widthFix"></image>好评</view>
</view>
</view>
</view>
</view>
<view class="cont_shop_edit">
<view class="cont_text">
<image class="cont_text_img" src="../../static/eval/editeval.png"></image>
<textarea :disable-default-padding="isIos" class="cont_textarea" placeholder="走心评价会创造出更多好货哦~"></textarea>
</view>
<view class="cont_ul">
<view class="cont_li">
<view class="cont_upload_remove">
<image class="cont_upload_remove_img" src="../../static/eval/closeImg.png" mode="widthFix"></image>
</view>
<image class="cont_li_img" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li cont_upload">
<image class="cont_upload_img" src="../../static/eval/adds.png" mode="widthFix"></image>
<view class="cont_upload_text">添加图片</view>
</view>
</view>
</view>
</view>
<view style="height: 300rpx;"></view>
<view class="footer">
<view class="footer_btn">提交</view>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const active = ref(0);
const isIos = ref(false);
const System = () =>{
const phone = wx.getSystemInfoSync();
if (phone.platform == 'ios') {
isIos.value = true
} else if (phone.platform == 'android') {
isIos.value = false
}
};
onLoad((options) => {
System();
});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

231
order/editeval/style.scss Normal file
View File

@ -0,0 +1,231 @@
page{
background-color: #f6f6f6;
}
.main{
.cont{
margin: 20rpx 20rpx 0 20rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
padding-bottom: 25rpx;
.cont_top{
margin: 0 25rpx 25rpx 25rpx;
padding:25rpx 0 25rpx 0;
border-bottom: 1rpx solid #f6f6f6;
display: flex;
align-items: center;
justify-content: space-between;
.cont_top_l{
display: flex;
align-items: center;
.cont_top_text{
font-size: 32rpx;
color: #333333;
font-weight: 500;
.cont_top_num{
color: #FF0000;
margin-left: 10rpx;
}
}
.cont_top_btn{
width: 133rpx;
height: 49rpx;
border-radius: 25rpx;
border: 1px solid #FF0000;
font-size: 26rpx;
color: #FF0000;
display: flex;
align-items: center;
justify-content: center;
margin-left: 30rpx;
}
}
.cont_top_r{
font-size: 26rpx;
color: #000000;
}
}
.cont_shop{
display: flex;
align-items: center;
justify-content: space-between;
padding: 0rpx 25rpx 0rpx 25rpx ;
.cont_shop_l{
display: flex;
.cont_shop_img{
width: 114rpx;
height: 114rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
.cont_shop_imgUrl{
width: 114rpx;
height: 114rpx;
display: block;
}
}
.cont_shop_x{
.cont_shop_title{
font-size: 28rpx;
color: #333333;
margin-left: 25rpx;
font-weight: 500;
}
.cont_shop_type{
display: flex;
.cont_goos{
display: flex;
align-items: center;
color: #999999;
font-size: 26rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
.cont_goos_img{
width: 40rpx;
height: 40rpx;
display: block;
margin-right: 10rpx;
}
}
}
}
}
.cont_shop_r{
width: 106rpx;
height: 46rpx;
background: linear-gradient( 90deg, #FD4955 0%, #FD343C 100%);
border-radius: 39rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 24rpx;
color: #FFFFFF;
}
}
.cont_shop_border{
margin:25rpx;
height: 1rpx;
background-color: #f6f6f6;
}
.cont_shop_edit{
margin:25rpx 25rpx 0rpx 25rpx;
background: #F7F8FA;
border-radius: 16rpx;
padding-bottom: 25rpx;
.cont_text{
color: #333333;
font-size: 28rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
display: flex;
.cont_text_img{
width: 28rpx;
height: 28rpx;
}
.cont_textarea{
padding: 0;
margin: 0;
border: none;
outline: none;
background-color: transparent;
box-sizing: border-box;
height:140rpx;
margin-left: 25rpx;
}
}
.cont_ul{
display: flex;
flex-wrap: wrap;
.cont_li{
width: 192rpx;
height: 192rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1px solid #F3F3F3;
margin-left: 20rpx;
margin-top: 25rpx;
position: relative;
.cont_upload_remove{
position: absolute;
z-index: 2;
width: 40rpx;
height: 40rpx;
right: -12rpx;
top: -12rpx;
border-radius: 50rpx;
background-color: #FFFFFF;
.cont_upload_remove_img{
width: 40rpx;
height: 40rpx;
border-radius: 50rpx;
}
}
.cont_li_img{
width: 192rpx;
height: 192rpx;
border-radius: 4rpx;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
}
.cont_upload{
background-color: #F7F8FA;
.cont_upload_img{
margin: 0 auto;
width: 80rpx;
height: 80rpx;
display: block;
margin-top: 35rpx;
}
.cont_upload_text{
text-align: center;
color: #999999;
font-size: 23rpx;
margin-top: 10rpx;
}
}
}
}
}
.footer{
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 160;
background: #FFFFFF;
font-size: 30rpx;
padding-bottom: env(safe-area-inset-bottom);
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 20rpx;
padding-left: 20rpx;
padding-right: 20rpx;
border-top: 1rpx solid #efefef;
.footer_btn{
width: 100%;
height: 85rpx;
background-color: #FD3F3F;
border-radius: 50rpx;
color: #FFFFFF;
display: flex;
align-items: center;
justify-content: center;
font-weight: 500;
font-size: 28rpx;
}
}
}

View File

@ -71,7 +71,7 @@
<view class="cont_pay">
<view class="cont_name"><image class="cont_name_img" src="../../static/order/WeChat.png" mode="widthFix"></image>微信支付</view>
</view>
<view class="cont_radio"><image class="cont_radioimg" src="../../static/order/radio.png"></image></view>
<view class="cont_radio"><image class="cont_radioimg" src="../../static/selected.png"></image></view>
</view>
</view>
<!-- 余额抵扣 -->
@ -154,7 +154,7 @@
<view class="coupon_item_name">新人限时券</view>
<view class="coupon_item_time">今日23:59到期</view>
</view>
<view class="coupon_item_r_r"></view>
<view class="coupon_radio"><image class="cont_radioimg" src="../../static/selected.png"></image></view>
</view>
</view>
<view style="height: 150rpx;"></view>

View File

@ -6,7 +6,7 @@ page{
background-repeat: no-repeat;
overflow: hidden;
.cont{
margin: 25rpx 20rpx 0 20rpx;
margin: 20rpx 20rpx 0 20rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
padding:30rpx;
@ -89,8 +89,9 @@ page{
justify-content: center;
margin-right: 15rpx;
.cont_radioimg{
width: 45rpx;
height: 45rpx;
width: 25rpx;
height: 25rpx;
display: block;
}
}
.cont_li{
@ -542,11 +543,19 @@ page{
margin-top: 10rpx;
}
}
.coupon_item_r_r{
.coupon_radio{
background-color: #E60703;
width: 42rpx;
height: 42rpx;
border-radius: 50rpx;
display: flex;
align-items: center;
justify-content: center;
.cont_radioimg{
width: 25rpx;
height: 25rpx;
display: block;
}
}
}
}

View File

@ -0,0 +1,154 @@
<template>
<view class="main">
<view class="cont flex">
<view class="cont_order_type">
<view class="cont_order_type_name">已完成</view>
<view class="cont_order_type_desc">期待与您再次相遇</view>
</view>
<view class="cont_service">
<image class="cont_service_img" src="../../static/order/ridertel.png" mode="widthFix"></image>
<view class="cont_service_name">联系骑手</view>
</view>
</view>
<view class="cont paddom">
<view class="cont_title cont_border">商品信息<text>共6件</text></view>
<view class="cont_shop">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_text">
<view class="cont_shop_title">糖醋排骨</view>
<view class="cont_shop_desc">单价:<text class="cont_shop_desc_price">5.98</text></view>
<view class="cont_shop_desc">数量:1</view>
</view>
</view>
<view class="cont_shop_r">
<view class="cont_shop_payment">实付:<text class="cont_shop_payment_price">4.09</text></view>
<view class="cont_shop_addcart">再来一件</view>
</view>
</view>
<view class="cont_shop">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_text">
<view class="cont_shop_title">糖醋排骨</view>
<view class="cont_shop_desc">单价:<text class="cont_shop_desc_price">5.98</text></view>
<view class="cont_shop_desc">数量:1</view>
</view>
</view>
<view class="cont_shop_r">
<view class="cont_shop_payment">实付:<text class="cont_shop_payment_price">4.09</text></view>
<view class="cont_shop_addcart">再来一件</view>
</view>
</view>
<view class="cont_shop">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_text">
<view class="cont_shop_title">糖醋排骨</view>
<view class="cont_shop_desc">单价:<text class="cont_shop_desc_price">5.98</text></view>
<view class="cont_shop_desc">数量:1</view>
</view>
</view>
<view class="cont_shop_r">
<view class="cont_shop_payment">实付:<text class="cont_shop_payment_price">4.09</text></view>
<view class="cont_shop_addcart">再来一件</view>
</view>
</view>
<view class="cont_shop_border"></view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">商品金额</view>
<view class="cont_shop_item_value"><text class="cont_shop_item_value_price">5.98</text></view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">配送费</view>
<view class="cont_shop_item_value"><text class="cont_shop_item_value_price">5.98</text></view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">满减券</view>
<view class="cont_shop_item_value cont_shop_item_color">-<text class="cont_shop_item_value_price">5.98</text></view>
</view>
<view class="cont_shop_border"></view>
<view class="cont_shop_total">实付:<text>99.45</text></view>
</view>
<view class="cont paddom">
<view class="cont_title cont_border">配送信息</view>
<view class="cont_shop_user">
<view class="cont_shop_user_name">地址:</view>
<view class="cont_shop_user_desc">
<view class="cont_shop_user_detal">琦善缘小区2号楼 5楼502</view>
<view class="cont_shop_user_tel">李霜178****8899</view>
</view>
</view>
<view class="cont_shop_user">
<view class="cont_shop_user_name">时间:</view>
<view class="cont_shop_user_desc">
<view class="cont_shop_user_detal">03/10 18:30-19:00</view>
</view>
</view>
<view class="cont_shop_user">
<view class="cont_shop_user_name">备注:</view>
<view class="cont_shop_user_desc">
<view class="cont_shop_user_detal">多加点辣一定要辣一定要辣一定要辣一定要辣....</view>
</view>
</view>
</view>
<view class="cont paddom">
<view class="cont_title cont_border">订单信息</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">订单编号</view>
<view class="cont_shop_item_value">35758859599447<text class="cont_shop_item_copy">复制</text></view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">下单时间</view>
<view class="cont_shop_item_value">2025/06/09 20:13</view>
</view>
<view class="cont_shop_item">
<view class="cont_shop_item_name">支付方式</view>
<view class="cont_shop_item_value">微信支付</view>
</view>
</view>
<view style="height: 200rpx;"></view>
<view class="footer">
<view class="footer_l">更多</view>
<view class="footer_r">
<view class="footer_btn">去评价</view>
<view class="footer_btn footer_btn_bcg">再来一单</view>
</view>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const active = ref(0);
const step = ref([
{title:'售后申请已提交成功,客服将全力为您解决问题,请您耐心等待',desc:'2025/06/29 20:15'},
{title:'售后申请已被受理,客服正在加速为您解决问题',desc:'2025/06/29 20:15'},
{title:'您的退款申请已审核通过,商品无需退回',desc:'2025/06/29 20:15'},
{title:'已将退款资金提交给原支付平台处理预计将在3个工作日内到账。具体以原支付平台处理结果为准',desc:'2025/06/29 20:15'},
{title:'退款已到账,请您注意查收,如有问题请联系客服',desc:'2025/06/29 20:15'},
])
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,260 @@
page{
background-color: #f6f6f6;
}
.main{
.cont{
margin: 20rpx 20rpx 0 20rpx;
padding: 25rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
overflow: hidden;
.cont_order_type{
.cont_order_type_name{
font-size: 40rpx;
color: #333333;
font-weight: 500;
}
.cont_order_type_desc{
color: #333333;
font-size: 26rpx;
margin-top: 10rpx;
}
}
.cont_service{
.cont_service_img{
margin: 0 auto;
width: 76rpx;
height: 76rpx;
display: block;
}
.cont_service_name{
font-size: 24rpx;
color: #333333;
margin-top: 10rpx;
}
}
.cont_shop_user{
display: flex;
margin-bottom: 25rpx;
.cont_shop_user_name{
color: #666666;
font-size: 26rpx;
width: 13%;
}
.cont_shop_user_desc{
width: 87%;
color: #333333;
font-size: 26rpx;
}
}
}
.flex{
display: flex;
align-items: center;
justify-content: space-between;
}
.cont_title{
font-size:32rpx;
color:#333333;
font-weight: 500;
padding-bottom: 25rpx;
}
.cont_title text{
font-size: 26rpx;
color: #999999;
margin-left: 10rpx;
font-weight: 400;
}
.cont_border{
border-bottom: 1rpx solid #f6f6f6;
margin-bottom: 25rpx;
}
.cont_shop{
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 25rpx;
.cont_shop_l{
display: flex;
align-items: center;
.cont_shop_img{
width: 138rpx;
height: 138rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
.cont_shop_imgUrl{
width: 138rpx;
height: 138rpx;
display: block;
}
}
.cont_shop_text{
margin-left: 20rpx;
.cont_shop_title{
font-size: 28rpx;
color: #333333;
font-weight: 500;
}
.cont_shop_price{
color: #333333;
font-size: 26rpx;
margin-top: 10rpx;
.cont_shop_price_f::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
}
.cont_shop_desc{
font-size: 26rpx;
color: #999999;
margin-top: 5rpx;
.cont_shop_desc_price::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
.cont_shop_desc_num{
margin-left: 40rpx;
}
}
}
}
.cont_shop_r{
.cont_shop_payment{
font-size: 26rpx;
color: #333333;
font-weight: 500;
.cont_shop_payment_price{}
.cont_shop_payment_price::before{
content:"¥";
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
}
.cont_shop_addcart{
width: 125rpx;
height: 45rpx;
border-radius: 40rpx;
border: 1rpx solid #999999;
font-size: 23rpx;
color: #333333;
display: flex;
align-items: center;
justify-content: center;
margin-top: 20rpx;
float: right;
}
}
}
.cont_shop_border{
width: 100%;
height: 1rpx;
background-color: #F2F3F5;
margin: 0 0 25rpx 0;
}
.cont_shop_total{
font-size: 28rpx;
color: #666666;
margin-bottom: 25rpx;
text-align: right;
}
.cont_shop_total text{
font-size: 34rpx;
color: #333333;
font-weight: 500;
}
.cont_shop_total text::before{
content: '¥';
margin: 0 5rpx 0 5rpx;
font-size: 24rpx;
}
.cont_shop_item{
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 25rpx;
.cont_shop_item_name{
color: #333333;
font-size: 26rpx;
}
.cont_shop_item_value{
color: #333333;
font-size: 26rpx;
font-weight: 500;
display: flex;
align-items: center;
.cont_shop_item_copy{
width: 77rpx;
height: 40rpx;
border-radius: 20rpx 20rpx 20rpx 20rpx;
border: 1rpx solid #999999;
font-size: 22rpx;
color:#999999;
display: flex;
align-items: center;
justify-content: center;
margin-left: 15rpx;
}
.cont_shop_item_value_price::before{
content: '¥';
font-size: 20rpx;
margin-left: 5rpx;
margin-right: 5rpx;
}
}
.cont_shop_item_color{
color: #FF0000;
}
}
.paddom{
padding-bottom: 0rpx;
}
.footer{
position: fixed;
left: 0;
right: 0;
bottom: 0;
z-index: 160;
background: #FFFFFF;
font-size: 30rpx;
padding-bottom: env(safe-area-inset-bottom);
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 20rpx;
padding-left: 25rpx;
padding-right: 25rpx;
border-top: 1rpx solid #efefef;
.footer_l{
color: #666666;
font-size: 28rpx;
width: 150rpx;
padding-top: 20rpx;
padding-bottom: 20rpx;
}
.footer_r{
display: flex;
.footer_btn{
padding: 13rpx 30rpx 13rpx 30rpx;
border-radius: 50rpx;
border: 1rpx solid #999999;
font-size: 28rpx;
color: #333333;
margin-left: 20rpx;
}
.footer_btn_bcg{
border: 1rpx solid #FD3F3F;
color: #FFFFFF;
background:#FD3F3F;
}
}
}
}

View File

@ -1,11 +1,11 @@
<template>
<view class="main">
<view class="head" :style="{'padding-top':headerHeight+'px'}">
<view class="head" :style="{'padding-top':headerHeight+3+'px'}">
<view class="head_top">
<view class="head_back" @click="handleBack()" :style="{'width': statusHeight+'px','height':statusHeight+'px'}">
<image class="head_back_img" src="https://zhkj1.oss-cn-shanghai.aliyuncs.com/newPD/zhBack.png" mode="widthFix"></image>
</view>
<view class="head_search">
<view class="head_search" :style="{'width':searchWidth+'px'}">
<image class="head_search_img" src="../../static/search_img.png" mode="widthFix"></image>
<input class="head_search_input" type="text" placeholder="请输入搜索内容" v-model="searchtext"/>
</view>
@ -18,7 +18,7 @@
</view>
</view>
<view class="order_cont" :style="{'padding-top':94+headerHeight+'px'}">
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -54,12 +54,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -75,12 +75,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -96,12 +96,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -117,12 +117,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -138,12 +138,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -159,12 +159,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -180,12 +180,12 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
</view>
<view class="order_list">
<view class="order_list" @click="orderDetail()">
<view class="order_type">已完成</view>
<view class="order_time">2025/1/15 17:20 周三</view>
<view class="order_scroll">
@ -201,7 +201,7 @@
<view class="order_bottom">
<view class="order_l">更多</view>
<view class="order_r">
<view class="order_btn">申请售后</view>
<view class="order_btn" @click.stop="assDetail()">申请售后</view>
<view class="order_btn order_bcg">再来一单</view>
</view>
</view>
@ -221,6 +221,23 @@ const counterStore = useCounterStore(); // 使用 Store
const {statusHeight,headerHeight,statusBartop,ButtonWidth,ButtonHeight } = storeToRefs(counterStore);
const navList = ref(['全部','待支付','备货中','待收货','待评价']);
const active = ref(0);
//
const pageWidth = ref(0);
//
const updatePageWidth = () => {
const systemInfo = uni.getSystemInfoSync();
pageWidth.value = systemInfo.windowWidth;
};
const searchWidth = computed(() => {
return pageWidth.value - statusHeight.value - ButtonWidth.value - 35;
});
const assDetail=()=>{
uni.navigateTo({
url:`/order/assedit/assedit`
})
};
//
const getPages = () => {
const pages = getCurrentPages();
@ -238,15 +255,26 @@ const handleBack = () => {
}
};
const clickOrder=(index)=>{
if(index == 4){
uni.navigateTo({
url:`/order/orderevallist/orderevallist?type=0`
})
return false
}
active.value = index;
}
const orderDetail=()=>{
uni.navigateTo({
url:`/order/orderDetail/orderDetail`
})
};
//使 uni.onLoad
onLoad((options) => {
const { type } = options;
if(type == 0 || type == 1 || type == 2 || type == 3 || type == 4 ){
active.value = type;
}
updatePageWidth();
});
onShow(() => {

View File

@ -0,0 +1,111 @@
<template>
<view class="main">
<view class="order_nav">
<view class="order_nav_item" v-for="(item,index) in tab" :key="index" :class="active == index?'order_nav_active':''" @click="clickOrder(index)">
<view class="order_nav_name">{{item}}</view>
<view class="order_nav_m"></view>
</view>
</view>
<view class="cont">
<view class="cont_title">下单时间: 2025/03/06 18:00</view>
<view class="cont_shop" @click="editEval()">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_title">泡椒田鸡</view>
</view>
<view class="cont_shop_r" v-if="active == 0" >去评价</view>
</view>
<block v-if="active == 1">
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/good.png" mode="widthFix"></image>好评</view>
<view class="cont_text"><text>味道很鲜美分量很足价格实惠</text></view>
<view class="cont_ul">
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
</view>
</block>
</view>
<view class="cont">
<view class="cont_title">下单时间: 2025/03/06 18:00</view>
<view class="cont_shop" @click="editEval()">
<view class="cont_shop_l">
<view class="cont_shop_img">
<image class="cont_shop_imgUrl" src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_shop_title">泡椒田鸡</view>
</view>
<view class="cont_shop_r" v-if="active == 0" >去评价</view>
</view>
<block v-if="active == 1">
<view class="cont_goos"><image class="cont_goos_img" src="../../static/eval/negative.png" mode="widthFix"></image>差评</view>
<view class="cont_text"><text>味道很鲜美分量很足价格实惠</text></view>
<view class="cont_ul">
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
<view class="cont_li">
<image src="../../static/Mask.png" mode="widthFix"></image>
</view>
</view>
</block>
</view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const tab = ref(['待评价','已评价']);
const active = ref(0);
const clickOrder=(index)=>{
if(index == active.value) return false;
active.value = index;
};
const editEval=()=>{
if(active.value != 0) return false;
uni.navigateTo({
url:`/order/editeval/editeval`
})
};
onLoad((options) => {
const { type } = options;
if(type == 0 || type == 1){active.value = type;}
});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,140 @@
page{
background-color: #f6f6f6;
}
.main{
.order_nav{
width: 100%;
display: flex;
justify-content: space-around;
background-color: #ffffff;
position: sticky;
border-bottom: 1rpx solid #f6f6f6;
top: 0;
.order_nav_item{
padding-top: 20rpx;
font-size: 28rpx;
width: 50%;
.order_nav_name{
width: 100%;
text-align: center;
height: 38rpx;
color: #666666;
display: flex;
align-items: center;
justify-content: center;
}
.order_nav_m{
margin: 0 auto;
width: 45rpx;
height: 20rpx;
display: block;
}
}
.order_nav_active{
.order_nav_name{
font-size: 32rpx;
color: #333333;
font-weight: 500;
}
.order_nav_m{
background: url(../../static/act.png);
background-repeat: no-repeat;
background-size: 100% 100%;
}
}
}
.cont{
margin: 20rpx 20rpx 0 20rpx;
background-color: #FFFFFF;
border-radius: 16rpx;
padding: 0 0rpx 25rpx 0rpx;
.cont_title{
font-size: 26rpx;
color: #999999;
margin: 0 25rpx 0 25rpx;
padding:25rpx 0 25rpx 0;
border-bottom: 1rpx solid #f6f6f6;
}
.cont_shop{
display: flex;
align-items: center;
justify-content: space-between;
padding: 25rpx 25rpx 0rpx 25rpx ;
.cont_shop_l{
display: flex;
.cont_shop_img{
width: 114rpx;
height: 114rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
.cont_shop_imgUrl{
width: 114rpx;
height: 114rpx;
display: block;
}
}
.cont_shop_title{
font-size: 28rpx;
color: #333333;
margin-left: 25rpx;
font-weight: 500;
}
}
.cont_shop_r{
width: 150rpx;
height: 60rpx;
background: linear-gradient( 90deg, #FD4955 0%, #FD343C 100%);
border-radius: 39rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 24rpx;
color: #FFFFFF;
}
}
.cont_goos{
display: flex;
align-items: center;
color: #FF0000;
font-size: 26rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
.cont_goos_img{
width: 40rpx;
height: 40rpx;
display: block;
margin-right: 10rpx;
}
}
.cont_text{
color: #333333;
font-size: 26rpx;
padding: 25rpx 25rpx 0rpx 25rpx ;
}
.cont_ul{
display: flex;
flex-wrap: wrap;
.cont_li{
width: 150rpx;
height: 150rpx;
background: #FFFFFF;
border-radius: 4rpx;
border: 1rpx solid #F3F3F3;
margin-left: 20rpx;
margin-top: 25rpx;
}
.cont_li image{
width: 150rpx;
height: 150rpx;
border-radius: 4rpx;
display: block;
}
}
}
}

View File

@ -114,6 +114,101 @@
"navigationStyle": "custom",
"enablePullDownRefresh": true
}
},
{
"path": "orderevallist/orderevallist",
"style": {
"navigationBarTitleText": "评价中心",
"navigationBarBackgroundColor": "#FFFFFF"
}
},
{
"path": "editeval/editeval",
"style": {
"navigationBarTitleText": "写评价",
"navigationBarBackgroundColor": "#FFFFFF"
}
},
{
"path": "assList/assList",
"style": {
"navigationBarTitleText": "退款/售后",
"navigationBarBackgroundColor": "#FFFFFF"
}
},
{
"path": "assDetail/assDetail",
"style": {
"navigationBarTitleText": "售后详情",
"navigationBarBackgroundColor": "#FFFFFF"
}
},{
"path": "assedit/assedit",
"style": {
"navigationBarTitleText": "申请售后",
"navigationBarBackgroundColor": "#FCEEEF"
}
},{
"path": "orderDetail/orderDetail",
"style": {
"navigationBarTitleText": "订单详情",
"navigationBarBackgroundColor": "#FFFFFF"
}
},{
"path": "coupon/coupon",
"style": {
"navigationBarTitleText": "优惠券",
"navigationBarBackgroundColor": "#FFFFFF"
}
}]
},
{
"root": "userserve",
"pages": [{
"path": "location/location",
"style": {
"navigationBarTitleText": "选择地址",
"navigationBarBackgroundColor": "#FFFFFF"
}
},
{
"path": "addressList/addressList",
"style": {
"navigationBarTitleText": "地址管理",
"navigationBarBackgroundColor": "#FFFFFF"
}
},{
"path": "aiserve/aiserve",
"style": {
"navigationBarTitleText": "AI学做菜",
"navigationBarBackgroundColor": "#FFFFFF",
"navigationStyle": "custom"
}
},{
"path": "certificate/certificate",
"style": {
"navigationBarTitleText": "证照资质",
"navigationBarBackgroundColor": "#FFFFFF"
}
},{
"path": "clientserve/clientserve",
"style": {
"navigationBarTitleText": "客户服务",
"navigationBarBackgroundColor": "#FFFFFF",
"navigationStyle": "custom"
}
},{
"path": "feedback/feedback",
"style": {
"navigationBarTitleText": "意见反馈",
"navigationBarBackgroundColor": "#FFFFFF"
}
},{
"path": "editaddress/editaddress",
"style": {
"navigationBarTitleText": "新增收货地址",
"navigationBarBackgroundColor": "#FFFFFF"
}
}]
}
],
@ -125,6 +220,10 @@
"order/orderConfirm/orderConfirm": {
"network": "all",
"packages": ["shopProDetail"]
},
"userserve/location/location": {
"network": "all",
"packages": ["userserve"]
}
},
"globalStyle": {

View File

@ -385,33 +385,6 @@ const cartData =()=>{
price:'68',
type:'1',
isSelected:'0'
},{
id:'004',
imgUrl:'../../static/Mask.png',
title:'辣炒猪肝',
desc:'',
amount:1,
price:'35',
type:'1',
isSelected:'0'
},{
id:'005',
imgUrl:'../../static/Mask.png',
title:'大肠刺身',
desc:'',
amount:1,
price:'88',
type:'1',
isSelected:'0'
},{
id:'006',
imgUrl:'../../static/Mask.png',
title:'香辣螺丝',
desc:'',
amount:1,
price:'10',
type:'1',
isSelected:'0'
}]
cartList.value = data;

View File

@ -433,7 +433,7 @@ page{
flex-wrap: wrap;
.shop_view_cont_tag_text{
border-radius: 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx;
border-radius: 10rpx;
color: #ff6868;
@ -536,7 +536,7 @@ page{
background: linear-gradient( 90deg, #FD4955 0%, #FD343C 100%);
border-radius: 39rpx;
color: #FFFFFF;
font-size: 30rpx;
font-size: 28rpx;
font-weight: 500;
display: flex;
align-items: center;
@ -784,7 +784,7 @@ page{
width: 112rpx;
height: 46rpx;
border-radius: 30rpx;
border: 1rpx solid #FF0000;
border: 1px solid #FF0000;
font-size: 26rpx;
color: #FF0000;
display: flex;

View File

@ -2,7 +2,7 @@
<view class="mian">
<!-- 头部区域 -->
<view class="head" :style="{'padding-top':headerHeight+3+'px'}">
<view class="head_search">
<view class="head_search" :style="{'width':searchWidth+'px'}">
<image class="head_search_img" src="../../static/search_img.png" mode="widthFix"></image>
<input class="head_search_input" type="text" placeholder="请输入搜索内容" v-model="searchtext"/>
</view>
@ -185,8 +185,18 @@ import { storeToRefs } from 'pinia';//实现解构付值
import { onLoad,onShow,onPullDownRefresh,onReachBottom } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
//使piniastoreToRefs(使)
const {statusHeight,headerHeight } = storeToRefs(counterStore);
const {statusHeight,headerHeight,ButtonWidth } = storeToRefs(counterStore);
const ScrollLeft = ref(0);
const pageWidth = ref(0);
//
const updatePageWidth = () => {
const systemInfo = uni.getSystemInfoSync();
pageWidth.value = systemInfo.windowWidth;
};
const searchWidth = computed(() => {
return pageWidth.value - ButtonWidth.value - 25;
});
const goDetail= ()=>{
uni.navigateTo({
url:`/shopProDetail/detail/detail`
@ -194,7 +204,7 @@ const goDetail= ()=>{
}
//使 uni.onLoad
onLoad((options) => {
updatePageWidth();
});
onShow(() => {

View File

@ -188,7 +188,7 @@ page{
flex-wrap: wrap;
.shop_view_cont_tag_text{
border-radius: 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx;
border-radius: 10rpx;
color: #ff6868;

View File

@ -16,14 +16,14 @@
<view class="grid_wrap_live_title"><image class="grid_wrap_live_img" src="../../static/index/v.png"></image>直播</view>
</view>
<view class="grid_wrap_r">
<view class="grid_wrap_li">
<view class="grid_wrap_li" @click="goAi()">
<view class="grid_wrap_li_l">
<view class="grid_wrap_li_title"><text>学做菜</text></view>
<view class="grid_wrap_li_desc">简单又快捷</view>
</view>
<image class="grid_wrap_li_r" src="../../static/index/AI.png" mode="widthFix"></image>
</view>
<view class="grid_wrap_li grid_wrap_top">
<view class="grid_wrap_li grid_wrap_top" @click="goAssList()">
<view class="grid_wrap_li_l">
<view class="grid_wrap_li_title"><text>极速退款</text></view>
<view class="grid_wrap_li_desc">食材有问题</view>
@ -166,7 +166,7 @@
<view class="shop_view">
<view class="shop_view_ul">
<view class="shop_view_li shop_view_bcg">
<swiper class="shop_view_li_swiper" indicator-dots interval="3000" autoplay indicator-active-color="#FFFFFF" indicator-color="rgba(246, 246, 246, .6)" circular>
<swiper class="shop_view_li_swiper" indicator-dots interval="3000" autoplay indicator-active-color="#FFFFFF" indicator-color="rgba(246, 246, 246, .6)" circular >
<swiper-item class="shop_view_li_swiper_item" >
<image class="shop_view_li_swiper_img_url" src="http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20250107-c8e67d36b17249b4822df152fd5ae546.png" mode="widthFix" @load="imageLoad" @click="goDetail()"></image>
</swiper-item>
@ -301,12 +301,12 @@ const {statusHeight,headerHeight } = storeToRefs(counterStore);
//使piniacounterStore
const { clickSType } = counterStore;
const goDetail= ()=>{
const goDetail=()=>{
uni.navigateTo({
url:`/shopProDetail/detail/detail`
})
}
const classify = ()=>{
const classify=()=>{
let params ={
productImgUrl: "http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20240611-c7e219dab5864847bee8c3f0cffbb658.jpg"
}
@ -322,11 +322,21 @@ const classify = ()=>{
})
})
}
const orderConfirm = ()=>{
const orderConfirm=()=>{
uni.navigateTo({
url:`/order/orderConfirm/orderConfirm`
})
}
const goAi=()=>{
uni.navigateTo({
url:`/userserve/aiserve/aiserve`
})
};
const goAssList=()=>{
uni.navigateTo({
url:`/order/assList/assList`
})
}
onLoad((options) => {
});

View File

@ -190,6 +190,8 @@ page{
.grid_wrap_li_r{
width: 140rpx;
height: 140rpx;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
}
}
.grid_wrap_top{
@ -266,7 +268,7 @@ page{
flex-wrap: wrap;
.scroll_view_shop_li{
border-radius: 6rpx 6rpx 6rpx 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx 0rpx 10rpx;
border-radius: 10rpx;
color: #FF6868;
@ -383,7 +385,7 @@ page{
flex-wrap: wrap;
.shop_view_cont_tag_text{
border-radius: 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx;
border-radius: 10rpx;
color: #ff6868;
@ -458,6 +460,8 @@ page{
background-color: #FF0000;
border-radius: 50rpx;
color: #FFFFFF;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
}
.footer_cont_img{
position: absolute;
@ -466,6 +470,8 @@ page{
height: 80rpx;
left: 0;
top: 0;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
}
}
.footer_cont_m{
@ -519,4 +525,19 @@ page{
text-decoration: line-through;
margin-left: 5rpx;
font-weight: 400;
}
}
@keyframes scaleDr{
0% {
transform: scale(0.98);
}
25% {
transform: scale(1.05);
}
50% {
transform: scale(1);
}
75% {
transform: scale(1.05);
}
}
// 结束

View File

@ -71,6 +71,8 @@ page{
height: 32rpx;
display: block;
margin-right: 10rpx;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
}
.content_head_title{
font-size: 28rpx;
@ -197,4 +199,19 @@ page{
}
}
}
@keyframes scaleDr{
0% {
transform: scale(0.98);
}
25% {
transform: scale(1.05);
}
50% {
transform: scale(1);
}
75% {
transform: scale(1.05);
}
}
// 结束
}

View File

@ -18,7 +18,7 @@ page{
width: 119rpx;
height: 112rpx;
border-radius: 100rpx;
background-color: #f6f6f6;
background-color: #666666;
overflow: hidden;
.head_user_message_photo_img{
width: 112rpx;
@ -55,7 +55,7 @@ page{
}
}
.user_account{
margin: 50rpx 20rpx 0 20rpx;
margin: 50rpx 30rpx 0 30rpx;
display: flex;
align-items: center;
justify-content: space-between;
@ -84,6 +84,8 @@ page{
.user_account_img{
width: 80rpx;
height: 80rpx;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
}
}
.user_account_border{
@ -96,6 +98,8 @@ page{
position: absolute;
top: 15rpx;
left: 120rpx;
-webkit-animation: 3s scaleDr ease-in-out infinite;
animation: 3s scaleDr ease-in-out infinite;
.user_account_tag_num{
width: 100%;
height: 29rpx;
@ -119,7 +123,7 @@ page{
}
}
.user_cont_list{
margin: 20rpx 20rpx 0 20rpx;
margin: 30rpx 30rpx 0 30rpx;
display: flex;
overflow: hidden;
flex-wrap: wrap;
@ -262,7 +266,7 @@ page{
flex-wrap: wrap;
.shop_view_cont_tag_text{
border-radius: 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx;
border-radius: 10rpx;
color: #ff6868;
@ -318,4 +322,19 @@ page{
margin-left: 5rpx;
font-weight: 400;
}
@keyframes scaleDr{
0% {
transform: scale(0.98);
}
25% {
transform: scale(1.05);
}
50% {
transform: scale(1);
}
75% {
transform: scale(1.05);
}
}
// 结束
}

View File

@ -16,7 +16,7 @@
</view>
</view>
<view class="user_account">
<view class="user_account_li">
<view class="user_account_li" @click="goCoupon()">
<view class="user_account_message">
<view class="user_account_amount">5</view>
<view class="user_account_name">优惠券</view>
@ -43,7 +43,7 @@
</view>
</view>
<view class="user_cont_list">
<view class="user_cont_li" v-for="(item,index) in contList" :key="index">
<view class="user_cont_li" v-for="(item,index) in contList" :key="index" @click="goServe(item,index)">
<image class="user_cont_li_img" :src="item.imgUrl" mode="widthFix"></image>
<view class="user_cont_li_name">{{item.name}}</view>
</view>
@ -214,7 +214,7 @@ const contList = ref([
{
id:1,
imgUrl:'../../static/user/service.png',
name:'客服务'
name:'客服务'
},
{
id:2,
@ -241,16 +241,41 @@ const goDetail=()=>{
uni.navigateTo({
url:`/shopProDetail/detail/detail`
})
};
const goCoupon=()=>{
uni.navigateTo({
url:`/order/coupon/coupon`
})
};
const goServe=(item,index)=>{
let url = "";
if(item.id == 2) return false;
if(item.id == 1){
url=`/userserve/clientserve/clientserve`
}else if(item.id == 3){
url=`/userserve/certificate/certificate`
}else if(item.id == 4){
url=`/userserve/feedback/feedback`
}else if(item.id == 5){
url=`/userserve/addressList/addressList`
}
uni.navigateTo({url})
}
//使piniastoreToRefs(使)
//const { count,doubleCount } = storeToRefs(counterStore);
const orderList=(item)=>{
if(item.id != 5){
if(item.id == 4){
uni.navigateTo({
url:`/order/orderevallist/orderevallist?type=0`
})
}else if(item.id != 5){
uni.navigateTo({
url:`/order/orderList/orderList?type=${item.id}`
})
}else{
console.log('跳退款')
uni.navigateTo({
url:`/order/assList/assList?type=0`
})
}
}

View File

@ -1,4 +1,5 @@
<template>
<page-meta :page-style="'overflow:'+(show?'hidden':'visible')"></page-meta>
<view class="mian">
<view class="head" :class="headShow?'head_show':''" :style="{'opacity':headShow?opacity:'1','padding-top':statusBartop+'px'}">
<view class="head_back" @click="handleBack()" :style="{'width': statusHeight+'px','height':statusHeight+'px'}">
@ -30,6 +31,7 @@
<view class="currentNumber">
<view class="item_currentNumber item_currentNumber_width" v-if="imglist.length"><text>{{currentIndex+1}}/{{imglist.length}}</text></view>
</view>
<image @click="Openqc" class="shop_qc" src="../../static/shopdetail/qc.png" mode="widthFix"></image>
</view>
<!-- 价格标题区域 -->
<view class="shop_head">
@ -53,7 +55,7 @@
<view class="shop_comment_cont">
<view class="shop_comment_cont_ul">
<view class="shop_comment_cont_l"><image class="shop_comment_cont_userimg" src="" mode="widthFix"></image><view class="shop_comment_cont_username">**v</view><view class="shop_comment_cont_amount">买过3次</view></view>
<view class="shop_comment_cont_ip">2025-02-25 来自上海</view>
<view class="shop_comment_cont_ip"></view>
</view>
<view class="shop_comment_m">
<view class="shop_comment_title"><text>速度很快品质保证一如既往的支持就不一一评价了👍👍</text></view>
@ -234,6 +236,14 @@
</view>
</view>
</view>
<uni-popup ref="qcPopup" type="bottom" @change="changeQc">
<view class="cont_qc">
<view class="cont_open_title">质检报告<view class="cont_open_close" @click="Openqc()"><image src="../../static/order/close.png" mode="widthFix"></image></view></view>
<view class="cont_image">
</view>
</view>
</uni-popup>
</view>
</template>
@ -244,6 +254,9 @@ import { storeToRefs } from 'pinia';//实现解构付值
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
const qcPopup = ref(null);
const qcShow = ref(false);
const show = ref(false);
const imglist = ref([
"http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20250211-2cc8b8615d6c4fdeb1ae3b69c384b8f8.jpg",
"http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20250211-ebe6955a5db9476e9a525042eaba3d0e.jpg",
@ -263,6 +276,13 @@ const sectionHeights = ref([0]);
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
const Openqc =() =>{
qcShow.value ? qcPopup.value.close():qcPopup.value.open()
};
const changeQc = (e)=>{
qcShow.value = e.show;
show.value = e.show;
};
//
const onImageLoad = (event) => {
const { width, height } = event.detail;

View File

@ -69,6 +69,14 @@ page{
width: 100%;
height: 750rpx;
position: relative;
.shop_qc{
width: 100rpx;
height: 100rpx;
position: absolute;
bottom: 20rpx;
left: 20rpx;
z-index: 2;
}
.shop_swiper_wrap{
width: 100%;
height: 750rpx;
@ -190,7 +198,7 @@ page{
height: 45rpx;
background: #FFD7D7;
border-radius: 50rpx;
border: 1rpx solid #FFA0A0;
border: 1px solid #FFA0A0;
color: #FF5D5D;
display: flex;
align-items: center;
@ -227,7 +235,7 @@ page{
height: 34rpx;
background: #FFF4CD;
border-radius: 4rpx;
border: 1rpx solid #F9D448;
border: 1px solid #F9D448;
font-size: 22rpx;
color: #D0AA1B;
margin-left: 15rpx;
@ -433,7 +441,7 @@ page{
flex-wrap: wrap;
.shop_view_cont_tag_text{
border-radius: 6rpx;
border: 1rpx solid #FF6868;
border: 1px solid #FF6868;
padding: 0rpx 10rpx;
border-radius: 10rpx;
color: #ff6868;
@ -473,7 +481,7 @@ page{
}
.footer{
position: fixed;
z-index: 998;
z-index: 88;
left: 0;
transform: translate3d(0, -100%, 0);
width: 100%;
@ -582,4 +590,41 @@ page{
margin-left: 5rpx;
font-weight: 400;
}
.cont_qc{
width: 100%;
background-color: #FFFFFF;
color: #333333;
border-top-left-radius: 20rpx;
border-top-right-radius: 20rpx;
.cont_open_title{
text-align: center;
font-size: 32rpx;
color: #333333;
font-weight: 500;
position: sticky;
top: 0;
height: 100rpx;
line-height: 100rpx;
.cont_open_close{
width: 100rpx;
height: 100rpx;
position: absolute;
top: 0;
right: 0;
display: flex;
align-items: center;
justify-content: center;
}
.cont_open_close image{
width: 55rpx;
height: 55rpx;
}
}
.cont_image{
width: 100%;
min-height: 600rpx;
max-height: 1200rpx;
overflow-x: auto;
}
}
}

View File

@ -19,7 +19,7 @@
</view>
<view class="eval_item_r"></view>
</view>
<view class="eval_item_text">强烈推荐肉质感很新鲜很嫩强烈推荐肉质感 很新鲜很嫩</view>
<view class="eval_item_text"><text>强烈推荐肉质感很新鲜很嫩强烈推荐肉质感 很新鲜很嫩</text></view>
<view class="eval_item_ul">
<view class="eval_item_li">
<image src="http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20250211-2cc8b8615d6c4fdeb1ae3b69c384b8f8.jpg" mode="widthFix"></image>
@ -56,7 +56,7 @@
</view>
<view class="eval_item_r"></view>
</view>
<view class="eval_item_text">强烈推荐肉质感很新鲜很嫩强烈推荐肉质感 很新鲜很嫩</view>
<view class="eval_item_text"><text>强烈推荐肉质感很新鲜很嫩强烈推荐肉质感 很新鲜很嫩</text></view>
<view class="eval_item_ul">
<view class="eval_item_li">
<image src="http://zhkjmall.oss-cn-shanghai.aliyuncs.com/mall-20250211-2cc8b8615d6c4fdeb1ae3b69c384b8f8.jpg" mode="widthFix"></image>
@ -119,7 +119,31 @@
</view>
</view>
<view style="height: 200rpx;"></view>
<!-- 底部 -->
<view class="footer">
<view class="footer_cont">
<view class="footer_l">
<view class="footer_li">
<view class="footer_icon">
<image class="footer_icon_img" src="../../static/shopdetail/collect.png" mode="widthFix"></image>
</view>
<view class="footer_name">收藏</view>
</view>
<view class="footer_li" @click="goCart()">
<view class="footer_icon">
<view class="footer_amount">45</view>
<image class="footer_icon_img" src="../../static/shopdetail/cart.png" mode="widthFix"></image>
</view>
<view class="footer_name">购物车</view>
</view>
</view>
<view class="footer_r">
<view class="footer_btn border_l">加入购物车</view>
<view class="footer_btn footer_btn_bcg border_r" @click="orderConfirm">立即下单</view>
</view>
</view>
</view>
</view>
</template>

View File

@ -7,12 +7,9 @@ page{
padding: 0 20rpx 20rpx 20rpx;
flex-wrap: wrap;
display: flex;
position: sticky;
top: 0;
left: 0;
border-bottom: 1rpx solid #f6f6f6;
.eval_tag{
font-size: 28rpx;
font-size: 23rpx;
color: #333333;
background-color: #F5F6FA;
border: 1rpx solid #F5F6FA;
@ -20,9 +17,9 @@ page{
align-items: center;
justify-content: center;
border-radius: 50rpx;
padding: 8rpx 25rpx 8rpx 25rpx;
padding: 10rpx 22rpx 10rpx 22rpx;
box-sizing: border-box;
margin: 20rpx 0 0 20rpx ;
margin: 20rpx 0rpx 0 20rpx ;
.eval_tag_img{
width: 28rpx;
height: 28rpx;
@ -31,11 +28,13 @@ page{
}
}
.eval_tag text{
font-size: 23rpx;
color: #999999;
margin-left: 10rpx;
}
.eval_tag_active{
background: #FFD7D7;
border: 1rpx solid #FFA0A0;
border: 1px solid #FFA0A0;
color: #FF5D5D;
}
@ -48,6 +47,8 @@ page{
background-color: #FFFFFF;
margin: 20rpx 20rpx 0 20rpx;
border-radius: 16rpx;
overflow: hidden;
box-shadow: 0 4rpx 8rpx rgba(0,0,0,.05);
.eval_item_top{
display: flex;
align-items: center;
@ -60,14 +61,15 @@ page{
display: flex;
align-items: center;
.eval_item_userimg{
width: 40rpx;
height: 40rpx;
width: 50rpx;
height: 50rpx;
border-radius: 50rpx;
background-color: #000
background-color: #000;
display: block;
}
.eval_item_username{
color: #000000;
font-size: 24rpx;
font-size: 26rpx;
margin-left: 10rpx;
}
@ -76,7 +78,7 @@ page{
height: 34rpx;
background: #FFF4CD;
border-radius: 4rpx;
border: 1rpx solid #F9D448;
border: 1px solid #F9D448;
font-size: 22rpx;
color: #D0AA1B;
display: flex;
@ -89,7 +91,7 @@ page{
display: flex;
align-items: center;
width: 95rpx;
height: 34rpx;
height: 37rpx;
background: linear-gradient( 90deg, #FAEAD3 0%, #FED4AE 100%);
border-radius: 4rpx;
color: #745030;
@ -98,17 +100,18 @@ page{
align-items: center;
justify-content: center;
.eval_item_usertext_img{
width: 28rpx;
height: 28rpx;
width: 23rpx;
height: 23rpx;
display: block;
margin-right: 5rpx;
}
}
}
}
.eval_item_text{
padding: 20rpx;
font-size: 30rpx;
color: #666666;
font-size: 27rpx;
color: #333333;
}
.eval_item_ul{
display: flex;
@ -133,12 +136,12 @@ page{
justify-content: space-between;
padding: 0 20rpx 20rpx 20rpx;
.eval_item_time{
font-size: 24rpx;
font-size: 26rpx;
color: #999999;
}
.eval_item_numa{
display: flex;
font-size: 24rpx;
font-size: 26rpx;
color: #999999;
align-items: center;
}
@ -152,5 +155,108 @@ page{
}
.footer{
position: fixed;
z-index: 998;
left: 0;
transform: translate3d(0, -100%, 0);
width: 100%;
top: 100%;
background: #FFFFFF;
padding-bottom: env(safe-area-inset-bottom);
padding-top: 20rpx;
border-top: 1rpx solid #F2F2F2;
.footer_cont{
padding-right: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
.footer_l{
display: flex;
align-items: center;
justify-content: space-between;
.footer_li{
width: 90rpx;
.footer_icon{
margin: 0 auto;
width: 50rpx;
height: 50rpx;
position: relative;
.footer_amount{
position: absolute;
right: -10rpx;
top:-10rpx;
width: 30rpx;
height: 30rpx;
border-radius: 50rpx;
background-color: #FF3135;
font-size: 18rpx;
color: #FFFFFF;
z-index: 2;
display: flex;
align-items: center;
justify-content: center;
}
.footer_icon_img{
width: 50rpx;
height: 50rpx;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
}
.footer_name{
font-size: 20rpx;
color: #666666;
text-align: center;
}
}
}
.footer_r{
width:75%;
display: flex;
align-items: center;
justify-content: space-between;
.footer_btn{
width: 50%;
height: 75rpx;
font-size: 27rpx;
color: #9b5c1f;
background-color: #fbe7cf;
display: flex;
align-items: center;
justify-content: center;
font-weight: 500;
}
.footer_btn_bcg{
color: #FFFFFF;
background-color: #FD3F3F;
}
.border_l{
border-radius: 50rpx;
margin-right: 20rpx;
// border-top-left-radius: 20rpx;
// border-bottom-left-radius: 20rpx;
}
.border_r{
border-radius: 50rpx;
// border-top-right-radius: 20rpx;
// border-bottom-right-radius: 20rpx;
}
}
}
}
.price::before {
content: '¥';
font-size: 24rpx;
margin-right: 5rpx;
}
.prices::before {
content: '¥';
font-size: 20rpx;
margin-right: 5rpx;
margin-left: 5rpx;
}
}

BIN
static/ass/img.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
static/ass/money.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
static/ass/phone.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
static/ass/uploading.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 839 B

BIN
static/eval/adds.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
static/eval/closeImg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
static/eval/editeval.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 B

BIN
static/eval/good.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 545 B

BIN
static/eval/negative.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 545 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 782 B

BIN
static/eval/ordinary.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1008 B

BIN
static/order/ridertel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
static/service.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
static/shopdetail/qc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
static/userserve/Robot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 KiB

BIN
static/userserve/ass.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
static/userserve/tel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
static/userserve/u_bl.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

View File

@ -0,0 +1,42 @@
## 2.0.102024-06-07
- 优化 uni-app x 中size 属性的类型
## 2.0.92024-01-12
fix: 修复图标大小默认值错误的问题
## 2.0.82023-12-14
- 修复 项目未使用 ts 情况下打包报错的bug
## 2.0.72023-12-14
- 修复 size 属性为 string 时不加单位导致尺寸异常的bug
## 2.0.62023-12-11
- 优化 兼容老版本icon类型如 top bottom 等
## 2.0.52023-12-11
- 优化 兼容老版本icon类型如 top bottom 等
## 2.0.42023-12-06
- 优化 uni-app x 下示例项目图标排序
## 2.0.32023-12-06
- 修复 nvue下引入组件报错的bug
## 2.0.22023-12-05
-优化 size 属性支持单位
## 2.0.12023-12-05
- 新增 uni-app x 支持定义图标
## 1.3.52022-01-24
- 优化 size 属性可以传入不带单位的字符串数值
## 1.3.42022-01-24
- 优化 size 支持其他单位
## 1.3.32022-01-17
- 修复 nvue 有些图标不显示的bug兼容老版本图标
## 1.3.22021-12-01
- 优化 示例可复制图标名称
## 1.3.12021-11-23
- 优化 兼容旧组件 type 值
## 1.3.02021-11-19
- 新增 更多图标
- 优化 自定义图标使用方式
- 优化 组件UI并提供设计资源详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource)
- 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-icons](https://uniapp.dcloud.io/component/uniui/uni-icons)
## 1.1.72021-11-08
## 1.2.02021-07-30
- 组件兼容 vue3如何创建vue3项目详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834)
## 1.1.52021-05-12
- 新增 组件示例地址
## 1.1.42021-02-05
- 调整为uni_modules目录规范

View File

@ -0,0 +1,91 @@
<template>
<text class="uni-icons" :style="styleObj">
<slot>{{unicode}}</slot>
</text>
</template>
<script>
import { fontData, IconsDataItem } from './uniicons_file'
/**
* Icons 图标
* @description 用于展示 icon 图标
* @tutorial https://ext.dcloud.net.cn/plugin?id=28
* @property {Number,String} size 图标大小
* @property {String} type 图标图案,参考示例
* @property {String} color 图标颜色
* @property {String} customPrefix 自定义图标
* @event {Function} click 点击 Icon 触发事件
*/
export default {
name: "uni-icons",
props: {
type: {
type: String,
default: ''
},
color: {
type: String,
default: '#333333'
},
size: {
type: [Number, String],
default: 16
},
fontFamily: {
type: String,
default: ''
}
},
data() {
return {};
},
computed: {
unicode() : string {
let codes = fontData.find((item : IconsDataItem) : boolean => { return item.font_class == this.type })
if (codes !== null) {
return codes.unicode
}
return ''
},
iconSize() : string {
const size = this.size
if (typeof size == 'string') {
const reg = /^[0-9]*$/g
return reg.test(size as string) ? '' + size + 'px' : '' + size;
// return '' + this.size
}
return this.getFontSize(size as number)
},
styleObj() : UTSJSONObject {
if (this.fontFamily !== '') {
return { color: this.color, fontSize: this.iconSize, fontFamily: this.fontFamily }
}
return { color: this.color, fontSize: this.iconSize }
}
},
created() { },
methods: {
/**
* 字体大小
*/
getFontSize(size : number) : string {
return size + 'px';
},
},
}
</script>
<style scoped>
@font-face {
font-family: UniIconsFontFamily;
src: url('./uniicons.ttf');
}
.uni-icons {
font-family: UniIconsFontFamily;
font-size: 18px;
font-style: normal;
color: #333;
}
</style>

View File

@ -0,0 +1,110 @@
<template>
<!-- #ifdef APP-NVUE -->
<text :style="styleObj" class="uni-icons" @click="_onClick">{{unicode}}</text>
<!-- #endif -->
<!-- #ifndef APP-NVUE -->
<text :style="styleObj" class="uni-icons" :class="['uniui-'+type,customPrefix,customPrefix?type:'']" @click="_onClick">
<slot></slot>
</text>
<!-- #endif -->
</template>
<script>
import { fontData } from './uniicons_file_vue.js';
const getVal = (val) => {
const reg = /^[0-9]*$/g
return (typeof val === 'number' || reg.test(val)) ? val + 'px' : val;
}
// #ifdef APP-NVUE
var domModule = weex.requireModule('dom');
import iconUrl from './uniicons.ttf'
domModule.addRule('fontFace', {
'fontFamily': "uniicons",
'src': "url('" + iconUrl + "')"
});
// #endif
/**
* Icons 图标
* @description 用于展示 icons 图标
* @tutorial https://ext.dcloud.net.cn/plugin?id=28
* @property {Number} size 图标大小
* @property {String} type 图标图案参考示例
* @property {String} color 图标颜色
* @property {String} customPrefix 自定义图标
* @event {Function} click 点击 Icon 触发事件
*/
export default {
name: 'UniIcons',
emits: ['click'],
props: {
type: {
type: String,
default: ''
},
color: {
type: String,
default: '#333333'
},
size: {
type: [Number, String],
default: 16
},
customPrefix: {
type: String,
default: ''
},
fontFamily: {
type: String,
default: ''
}
},
data() {
return {
icons: fontData
}
},
computed: {
unicode() {
let code = this.icons.find(v => v.font_class === this.type)
if (code) {
return code.unicode
}
return ''
},
iconSize() {
return getVal(this.size)
},
styleObj() {
if (this.fontFamily !== '') {
return `color: ${this.color}; font-size: ${this.iconSize}; font-family: ${this.fontFamily};`
}
return `color: ${this.color}; font-size: ${this.iconSize};`
}
},
methods: {
_onClick() {
this.$emit('click')
}
}
}
</script>
<style lang="scss">
/* #ifndef APP-NVUE */
@import './uniicons.css';
@font-face {
font-family: uniicons;
src: url('./uniicons.ttf');
}
/* #endif */
.uni-icons {
font-family: uniicons;
text-decoration: none;
text-align: center;
}
</style>

View File

@ -0,0 +1,664 @@
.uniui-cart-filled:before {
content: "\e6d0";
}
.uniui-gift-filled:before {
content: "\e6c4";
}
.uniui-color:before {
content: "\e6cf";
}
.uniui-wallet:before {
content: "\e6b1";
}
.uniui-settings-filled:before {
content: "\e6ce";
}
.uniui-auth-filled:before {
content: "\e6cc";
}
.uniui-shop-filled:before {
content: "\e6cd";
}
.uniui-staff-filled:before {
content: "\e6cb";
}
.uniui-vip-filled:before {
content: "\e6c6";
}
.uniui-plus-filled:before {
content: "\e6c7";
}
.uniui-folder-add-filled:before {
content: "\e6c8";
}
.uniui-color-filled:before {
content: "\e6c9";
}
.uniui-tune-filled:before {
content: "\e6ca";
}
.uniui-calendar-filled:before {
content: "\e6c0";
}
.uniui-notification-filled:before {
content: "\e6c1";
}
.uniui-wallet-filled:before {
content: "\e6c2";
}
.uniui-medal-filled:before {
content: "\e6c3";
}
.uniui-fire-filled:before {
content: "\e6c5";
}
.uniui-refreshempty:before {
content: "\e6bf";
}
.uniui-location-filled:before {
content: "\e6af";
}
.uniui-person-filled:before {
content: "\e69d";
}
.uniui-personadd-filled:before {
content: "\e698";
}
.uniui-arrowthinleft:before {
content: "\e6d2";
}
.uniui-arrowthinup:before {
content: "\e6d3";
}
.uniui-arrowthindown:before {
content: "\e6d4";
}
.uniui-back:before {
content: "\e6b9";
}
.uniui-forward:before {
content: "\e6ba";
}
.uniui-arrow-right:before {
content: "\e6bb";
}
.uniui-arrow-left:before {
content: "\e6bc";
}
.uniui-arrow-up:before {
content: "\e6bd";
}
.uniui-arrow-down:before {
content: "\e6be";
}
.uniui-arrowthinright:before {
content: "\e6d1";
}
.uniui-down:before {
content: "\e6b8";
}
.uniui-bottom:before {
content: "\e6b8";
}
.uniui-arrowright:before {
content: "\e6d5";
}
.uniui-right:before {
content: "\e6b5";
}
.uniui-up:before {
content: "\e6b6";
}
.uniui-top:before {
content: "\e6b6";
}
.uniui-left:before {
content: "\e6b7";
}
.uniui-arrowup:before {
content: "\e6d6";
}
.uniui-eye:before {
content: "\e651";
}
.uniui-eye-filled:before {
content: "\e66a";
}
.uniui-eye-slash:before {
content: "\e6b3";
}
.uniui-eye-slash-filled:before {
content: "\e6b4";
}
.uniui-info-filled:before {
content: "\e649";
}
.uniui-reload:before {
content: "\e6b2";
}
.uniui-micoff-filled:before {
content: "\e6b0";
}
.uniui-map-pin-ellipse:before {
content: "\e6ac";
}
.uniui-map-pin:before {
content: "\e6ad";
}
.uniui-location:before {
content: "\e6ae";
}
.uniui-starhalf:before {
content: "\e683";
}
.uniui-star:before {
content: "\e688";
}
.uniui-star-filled:before {
content: "\e68f";
}
.uniui-calendar:before {
content: "\e6a0";
}
.uniui-fire:before {
content: "\e6a1";
}
.uniui-medal:before {
content: "\e6a2";
}
.uniui-font:before {
content: "\e6a3";
}
.uniui-gift:before {
content: "\e6a4";
}
.uniui-link:before {
content: "\e6a5";
}
.uniui-notification:before {
content: "\e6a6";
}
.uniui-staff:before {
content: "\e6a7";
}
.uniui-vip:before {
content: "\e6a8";
}
.uniui-folder-add:before {
content: "\e6a9";
}
.uniui-tune:before {
content: "\e6aa";
}
.uniui-auth:before {
content: "\e6ab";
}
.uniui-person:before {
content: "\e699";
}
.uniui-email-filled:before {
content: "\e69a";
}
.uniui-phone-filled:before {
content: "\e69b";
}
.uniui-phone:before {
content: "\e69c";
}
.uniui-email:before {
content: "\e69e";
}
.uniui-personadd:before {
content: "\e69f";
}
.uniui-chatboxes-filled:before {
content: "\e692";
}
.uniui-contact:before {
content: "\e693";
}
.uniui-chatbubble-filled:before {
content: "\e694";
}
.uniui-contact-filled:before {
content: "\e695";
}
.uniui-chatboxes:before {
content: "\e696";
}
.uniui-chatbubble:before {
content: "\e697";
}
.uniui-upload-filled:before {
content: "\e68e";
}
.uniui-upload:before {
content: "\e690";
}
.uniui-weixin:before {
content: "\e691";
}
.uniui-compose:before {
content: "\e67f";
}
.uniui-qq:before {
content: "\e680";
}
.uniui-download-filled:before {
content: "\e681";
}
.uniui-pyq:before {
content: "\e682";
}
.uniui-sound:before {
content: "\e684";
}
.uniui-trash-filled:before {
content: "\e685";
}
.uniui-sound-filled:before {
content: "\e686";
}
.uniui-trash:before {
content: "\e687";
}
.uniui-videocam-filled:before {
content: "\e689";
}
.uniui-spinner-cycle:before {
content: "\e68a";
}
.uniui-weibo:before {
content: "\e68b";
}
.uniui-videocam:before {
content: "\e68c";
}
.uniui-download:before {
content: "\e68d";
}
.uniui-help:before {
content: "\e679";
}
.uniui-navigate-filled:before {
content: "\e67a";
}
.uniui-plusempty:before {
content: "\e67b";
}
.uniui-smallcircle:before {
content: "\e67c";
}
.uniui-minus-filled:before {
content: "\e67d";
}
.uniui-micoff:before {
content: "\e67e";
}
.uniui-closeempty:before {
content: "\e66c";
}
.uniui-clear:before {
content: "\e66d";
}
.uniui-navigate:before {
content: "\e66e";
}
.uniui-minus:before {
content: "\e66f";
}
.uniui-image:before {
content: "\e670";
}
.uniui-mic:before {
content: "\e671";
}
.uniui-paperplane:before {
content: "\e672";
}
.uniui-close:before {
content: "\e673";
}
.uniui-help-filled:before {
content: "\e674";
}
.uniui-paperplane-filled:before {
content: "\e675";
}
.uniui-plus:before {
content: "\e676";
}
.uniui-mic-filled:before {
content: "\e677";
}
.uniui-image-filled:before {
content: "\e678";
}
.uniui-locked-filled:before {
content: "\e668";
}
.uniui-info:before {
content: "\e669";
}
.uniui-locked:before {
content: "\e66b";
}
.uniui-camera-filled:before {
content: "\e658";
}
.uniui-chat-filled:before {
content: "\e659";
}
.uniui-camera:before {
content: "\e65a";
}
.uniui-circle:before {
content: "\e65b";
}
.uniui-checkmarkempty:before {
content: "\e65c";
}
.uniui-chat:before {
content: "\e65d";
}
.uniui-circle-filled:before {
content: "\e65e";
}
.uniui-flag:before {
content: "\e65f";
}
.uniui-flag-filled:before {
content: "\e660";
}
.uniui-gear-filled:before {
content: "\e661";
}
.uniui-home:before {
content: "\e662";
}
.uniui-home-filled:before {
content: "\e663";
}
.uniui-gear:before {
content: "\e664";
}
.uniui-smallcircle-filled:before {
content: "\e665";
}
.uniui-map-filled:before {
content: "\e666";
}
.uniui-map:before {
content: "\e667";
}
.uniui-refresh-filled:before {
content: "\e656";
}
.uniui-refresh:before {
content: "\e657";
}
.uniui-cloud-upload:before {
content: "\e645";
}
.uniui-cloud-download-filled:before {
content: "\e646";
}
.uniui-cloud-download:before {
content: "\e647";
}
.uniui-cloud-upload-filled:before {
content: "\e648";
}
.uniui-redo:before {
content: "\e64a";
}
.uniui-images-filled:before {
content: "\e64b";
}
.uniui-undo-filled:before {
content: "\e64c";
}
.uniui-more:before {
content: "\e64d";
}
.uniui-more-filled:before {
content: "\e64e";
}
.uniui-undo:before {
content: "\e64f";
}
.uniui-images:before {
content: "\e650";
}
.uniui-paperclip:before {
content: "\e652";
}
.uniui-settings:before {
content: "\e653";
}
.uniui-search:before {
content: "\e654";
}
.uniui-redo-filled:before {
content: "\e655";
}
.uniui-list:before {
content: "\e644";
}
.uniui-mail-open-filled:before {
content: "\e63a";
}
.uniui-hand-down-filled:before {
content: "\e63c";
}
.uniui-hand-down:before {
content: "\e63d";
}
.uniui-hand-up-filled:before {
content: "\e63e";
}
.uniui-hand-up:before {
content: "\e63f";
}
.uniui-heart-filled:before {
content: "\e641";
}
.uniui-mail-open:before {
content: "\e643";
}
.uniui-heart:before {
content: "\e639";
}
.uniui-loop:before {
content: "\e633";
}
.uniui-pulldown:before {
content: "\e632";
}
.uniui-scan:before {
content: "\e62a";
}
.uniui-bars:before {
content: "\e627";
}
.uniui-checkbox:before {
content: "\e62b";
}
.uniui-checkbox-filled:before {
content: "\e62c";
}
.uniui-shop:before {
content: "\e62f";
}
.uniui-headphones:before {
content: "\e630";
}
.uniui-cart:before {
content: "\e631";
}

View File

@ -0,0 +1,664 @@
export type IconsData = {
id : string
name : string
font_family : string
css_prefix_text : string
description : string
glyphs : Array<IconsDataItem>
}
export type IconsDataItem = {
font_class : string
unicode : string
}
export const fontData = [
{
"font_class": "arrow-down",
"unicode": "\ue6be"
},
{
"font_class": "arrow-left",
"unicode": "\ue6bc"
},
{
"font_class": "arrow-right",
"unicode": "\ue6bb"
},
{
"font_class": "arrow-up",
"unicode": "\ue6bd"
},
{
"font_class": "auth",
"unicode": "\ue6ab"
},
{
"font_class": "auth-filled",
"unicode": "\ue6cc"
},
{
"font_class": "back",
"unicode": "\ue6b9"
},
{
"font_class": "bars",
"unicode": "\ue627"
},
{
"font_class": "calendar",
"unicode": "\ue6a0"
},
{
"font_class": "calendar-filled",
"unicode": "\ue6c0"
},
{
"font_class": "camera",
"unicode": "\ue65a"
},
{
"font_class": "camera-filled",
"unicode": "\ue658"
},
{
"font_class": "cart",
"unicode": "\ue631"
},
{
"font_class": "cart-filled",
"unicode": "\ue6d0"
},
{
"font_class": "chat",
"unicode": "\ue65d"
},
{
"font_class": "chat-filled",
"unicode": "\ue659"
},
{
"font_class": "chatboxes",
"unicode": "\ue696"
},
{
"font_class": "chatboxes-filled",
"unicode": "\ue692"
},
{
"font_class": "chatbubble",
"unicode": "\ue697"
},
{
"font_class": "chatbubble-filled",
"unicode": "\ue694"
},
{
"font_class": "checkbox",
"unicode": "\ue62b"
},
{
"font_class": "checkbox-filled",
"unicode": "\ue62c"
},
{
"font_class": "checkmarkempty",
"unicode": "\ue65c"
},
{
"font_class": "circle",
"unicode": "\ue65b"
},
{
"font_class": "circle-filled",
"unicode": "\ue65e"
},
{
"font_class": "clear",
"unicode": "\ue66d"
},
{
"font_class": "close",
"unicode": "\ue673"
},
{
"font_class": "closeempty",
"unicode": "\ue66c"
},
{
"font_class": "cloud-download",
"unicode": "\ue647"
},
{
"font_class": "cloud-download-filled",
"unicode": "\ue646"
},
{
"font_class": "cloud-upload",
"unicode": "\ue645"
},
{
"font_class": "cloud-upload-filled",
"unicode": "\ue648"
},
{
"font_class": "color",
"unicode": "\ue6cf"
},
{
"font_class": "color-filled",
"unicode": "\ue6c9"
},
{
"font_class": "compose",
"unicode": "\ue67f"
},
{
"font_class": "contact",
"unicode": "\ue693"
},
{
"font_class": "contact-filled",
"unicode": "\ue695"
},
{
"font_class": "down",
"unicode": "\ue6b8"
},
{
"font_class": "bottom",
"unicode": "\ue6b8"
},
{
"font_class": "download",
"unicode": "\ue68d"
},
{
"font_class": "download-filled",
"unicode": "\ue681"
},
{
"font_class": "email",
"unicode": "\ue69e"
},
{
"font_class": "email-filled",
"unicode": "\ue69a"
},
{
"font_class": "eye",
"unicode": "\ue651"
},
{
"font_class": "eye-filled",
"unicode": "\ue66a"
},
{
"font_class": "eye-slash",
"unicode": "\ue6b3"
},
{
"font_class": "eye-slash-filled",
"unicode": "\ue6b4"
},
{
"font_class": "fire",
"unicode": "\ue6a1"
},
{
"font_class": "fire-filled",
"unicode": "\ue6c5"
},
{
"font_class": "flag",
"unicode": "\ue65f"
},
{
"font_class": "flag-filled",
"unicode": "\ue660"
},
{
"font_class": "folder-add",
"unicode": "\ue6a9"
},
{
"font_class": "folder-add-filled",
"unicode": "\ue6c8"
},
{
"font_class": "font",
"unicode": "\ue6a3"
},
{
"font_class": "forward",
"unicode": "\ue6ba"
},
{
"font_class": "gear",
"unicode": "\ue664"
},
{
"font_class": "gear-filled",
"unicode": "\ue661"
},
{
"font_class": "gift",
"unicode": "\ue6a4"
},
{
"font_class": "gift-filled",
"unicode": "\ue6c4"
},
{
"font_class": "hand-down",
"unicode": "\ue63d"
},
{
"font_class": "hand-down-filled",
"unicode": "\ue63c"
},
{
"font_class": "hand-up",
"unicode": "\ue63f"
},
{
"font_class": "hand-up-filled",
"unicode": "\ue63e"
},
{
"font_class": "headphones",
"unicode": "\ue630"
},
{
"font_class": "heart",
"unicode": "\ue639"
},
{
"font_class": "heart-filled",
"unicode": "\ue641"
},
{
"font_class": "help",
"unicode": "\ue679"
},
{
"font_class": "help-filled",
"unicode": "\ue674"
},
{
"font_class": "home",
"unicode": "\ue662"
},
{
"font_class": "home-filled",
"unicode": "\ue663"
},
{
"font_class": "image",
"unicode": "\ue670"
},
{
"font_class": "image-filled",
"unicode": "\ue678"
},
{
"font_class": "images",
"unicode": "\ue650"
},
{
"font_class": "images-filled",
"unicode": "\ue64b"
},
{
"font_class": "info",
"unicode": "\ue669"
},
{
"font_class": "info-filled",
"unicode": "\ue649"
},
{
"font_class": "left",
"unicode": "\ue6b7"
},
{
"font_class": "link",
"unicode": "\ue6a5"
},
{
"font_class": "list",
"unicode": "\ue644"
},
{
"font_class": "location",
"unicode": "\ue6ae"
},
{
"font_class": "location-filled",
"unicode": "\ue6af"
},
{
"font_class": "locked",
"unicode": "\ue66b"
},
{
"font_class": "locked-filled",
"unicode": "\ue668"
},
{
"font_class": "loop",
"unicode": "\ue633"
},
{
"font_class": "mail-open",
"unicode": "\ue643"
},
{
"font_class": "mail-open-filled",
"unicode": "\ue63a"
},
{
"font_class": "map",
"unicode": "\ue667"
},
{
"font_class": "map-filled",
"unicode": "\ue666"
},
{
"font_class": "map-pin",
"unicode": "\ue6ad"
},
{
"font_class": "map-pin-ellipse",
"unicode": "\ue6ac"
},
{
"font_class": "medal",
"unicode": "\ue6a2"
},
{
"font_class": "medal-filled",
"unicode": "\ue6c3"
},
{
"font_class": "mic",
"unicode": "\ue671"
},
{
"font_class": "mic-filled",
"unicode": "\ue677"
},
{
"font_class": "micoff",
"unicode": "\ue67e"
},
{
"font_class": "micoff-filled",
"unicode": "\ue6b0"
},
{
"font_class": "minus",
"unicode": "\ue66f"
},
{
"font_class": "minus-filled",
"unicode": "\ue67d"
},
{
"font_class": "more",
"unicode": "\ue64d"
},
{
"font_class": "more-filled",
"unicode": "\ue64e"
},
{
"font_class": "navigate",
"unicode": "\ue66e"
},
{
"font_class": "navigate-filled",
"unicode": "\ue67a"
},
{
"font_class": "notification",
"unicode": "\ue6a6"
},
{
"font_class": "notification-filled",
"unicode": "\ue6c1"
},
{
"font_class": "paperclip",
"unicode": "\ue652"
},
{
"font_class": "paperplane",
"unicode": "\ue672"
},
{
"font_class": "paperplane-filled",
"unicode": "\ue675"
},
{
"font_class": "person",
"unicode": "\ue699"
},
{
"font_class": "person-filled",
"unicode": "\ue69d"
},
{
"font_class": "personadd",
"unicode": "\ue69f"
},
{
"font_class": "personadd-filled",
"unicode": "\ue698"
},
{
"font_class": "personadd-filled-copy",
"unicode": "\ue6d1"
},
{
"font_class": "phone",
"unicode": "\ue69c"
},
{
"font_class": "phone-filled",
"unicode": "\ue69b"
},
{
"font_class": "plus",
"unicode": "\ue676"
},
{
"font_class": "plus-filled",
"unicode": "\ue6c7"
},
{
"font_class": "plusempty",
"unicode": "\ue67b"
},
{
"font_class": "pulldown",
"unicode": "\ue632"
},
{
"font_class": "pyq",
"unicode": "\ue682"
},
{
"font_class": "qq",
"unicode": "\ue680"
},
{
"font_class": "redo",
"unicode": "\ue64a"
},
{
"font_class": "redo-filled",
"unicode": "\ue655"
},
{
"font_class": "refresh",
"unicode": "\ue657"
},
{
"font_class": "refresh-filled",
"unicode": "\ue656"
},
{
"font_class": "refreshempty",
"unicode": "\ue6bf"
},
{
"font_class": "reload",
"unicode": "\ue6b2"
},
{
"font_class": "right",
"unicode": "\ue6b5"
},
{
"font_class": "scan",
"unicode": "\ue62a"
},
{
"font_class": "search",
"unicode": "\ue654"
},
{
"font_class": "settings",
"unicode": "\ue653"
},
{
"font_class": "settings-filled",
"unicode": "\ue6ce"
},
{
"font_class": "shop",
"unicode": "\ue62f"
},
{
"font_class": "shop-filled",
"unicode": "\ue6cd"
},
{
"font_class": "smallcircle",
"unicode": "\ue67c"
},
{
"font_class": "smallcircle-filled",
"unicode": "\ue665"
},
{
"font_class": "sound",
"unicode": "\ue684"
},
{
"font_class": "sound-filled",
"unicode": "\ue686"
},
{
"font_class": "spinner-cycle",
"unicode": "\ue68a"
},
{
"font_class": "staff",
"unicode": "\ue6a7"
},
{
"font_class": "staff-filled",
"unicode": "\ue6cb"
},
{
"font_class": "star",
"unicode": "\ue688"
},
{
"font_class": "star-filled",
"unicode": "\ue68f"
},
{
"font_class": "starhalf",
"unicode": "\ue683"
},
{
"font_class": "trash",
"unicode": "\ue687"
},
{
"font_class": "trash-filled",
"unicode": "\ue685"
},
{
"font_class": "tune",
"unicode": "\ue6aa"
},
{
"font_class": "tune-filled",
"unicode": "\ue6ca"
},
{
"font_class": "undo",
"unicode": "\ue64f"
},
{
"font_class": "undo-filled",
"unicode": "\ue64c"
},
{
"font_class": "up",
"unicode": "\ue6b6"
},
{
"font_class": "top",
"unicode": "\ue6b6"
},
{
"font_class": "upload",
"unicode": "\ue690"
},
{
"font_class": "upload-filled",
"unicode": "\ue68e"
},
{
"font_class": "videocam",
"unicode": "\ue68c"
},
{
"font_class": "videocam-filled",
"unicode": "\ue689"
},
{
"font_class": "vip",
"unicode": "\ue6a8"
},
{
"font_class": "vip-filled",
"unicode": "\ue6c6"
},
{
"font_class": "wallet",
"unicode": "\ue6b1"
},
{
"font_class": "wallet-filled",
"unicode": "\ue6c2"
},
{
"font_class": "weibo",
"unicode": "\ue68b"
},
{
"font_class": "weixin",
"unicode": "\ue691"
}
] as IconsDataItem[]
// export const fontData = JSON.parse<IconsDataItem>(fontDataJson)

View File

@ -0,0 +1,649 @@
export const fontData = [
{
"font_class": "arrow-down",
"unicode": "\ue6be"
},
{
"font_class": "arrow-left",
"unicode": "\ue6bc"
},
{
"font_class": "arrow-right",
"unicode": "\ue6bb"
},
{
"font_class": "arrow-up",
"unicode": "\ue6bd"
},
{
"font_class": "auth",
"unicode": "\ue6ab"
},
{
"font_class": "auth-filled",
"unicode": "\ue6cc"
},
{
"font_class": "back",
"unicode": "\ue6b9"
},
{
"font_class": "bars",
"unicode": "\ue627"
},
{
"font_class": "calendar",
"unicode": "\ue6a0"
},
{
"font_class": "calendar-filled",
"unicode": "\ue6c0"
},
{
"font_class": "camera",
"unicode": "\ue65a"
},
{
"font_class": "camera-filled",
"unicode": "\ue658"
},
{
"font_class": "cart",
"unicode": "\ue631"
},
{
"font_class": "cart-filled",
"unicode": "\ue6d0"
},
{
"font_class": "chat",
"unicode": "\ue65d"
},
{
"font_class": "chat-filled",
"unicode": "\ue659"
},
{
"font_class": "chatboxes",
"unicode": "\ue696"
},
{
"font_class": "chatboxes-filled",
"unicode": "\ue692"
},
{
"font_class": "chatbubble",
"unicode": "\ue697"
},
{
"font_class": "chatbubble-filled",
"unicode": "\ue694"
},
{
"font_class": "checkbox",
"unicode": "\ue62b"
},
{
"font_class": "checkbox-filled",
"unicode": "\ue62c"
},
{
"font_class": "checkmarkempty",
"unicode": "\ue65c"
},
{
"font_class": "circle",
"unicode": "\ue65b"
},
{
"font_class": "circle-filled",
"unicode": "\ue65e"
},
{
"font_class": "clear",
"unicode": "\ue66d"
},
{
"font_class": "close",
"unicode": "\ue673"
},
{
"font_class": "closeempty",
"unicode": "\ue66c"
},
{
"font_class": "cloud-download",
"unicode": "\ue647"
},
{
"font_class": "cloud-download-filled",
"unicode": "\ue646"
},
{
"font_class": "cloud-upload",
"unicode": "\ue645"
},
{
"font_class": "cloud-upload-filled",
"unicode": "\ue648"
},
{
"font_class": "color",
"unicode": "\ue6cf"
},
{
"font_class": "color-filled",
"unicode": "\ue6c9"
},
{
"font_class": "compose",
"unicode": "\ue67f"
},
{
"font_class": "contact",
"unicode": "\ue693"
},
{
"font_class": "contact-filled",
"unicode": "\ue695"
},
{
"font_class": "down",
"unicode": "\ue6b8"
},
{
"font_class": "bottom",
"unicode": "\ue6b8"
},
{
"font_class": "download",
"unicode": "\ue68d"
},
{
"font_class": "download-filled",
"unicode": "\ue681"
},
{
"font_class": "email",
"unicode": "\ue69e"
},
{
"font_class": "email-filled",
"unicode": "\ue69a"
},
{
"font_class": "eye",
"unicode": "\ue651"
},
{
"font_class": "eye-filled",
"unicode": "\ue66a"
},
{
"font_class": "eye-slash",
"unicode": "\ue6b3"
},
{
"font_class": "eye-slash-filled",
"unicode": "\ue6b4"
},
{
"font_class": "fire",
"unicode": "\ue6a1"
},
{
"font_class": "fire-filled",
"unicode": "\ue6c5"
},
{
"font_class": "flag",
"unicode": "\ue65f"
},
{
"font_class": "flag-filled",
"unicode": "\ue660"
},
{
"font_class": "folder-add",
"unicode": "\ue6a9"
},
{
"font_class": "folder-add-filled",
"unicode": "\ue6c8"
},
{
"font_class": "font",
"unicode": "\ue6a3"
},
{
"font_class": "forward",
"unicode": "\ue6ba"
},
{
"font_class": "gear",
"unicode": "\ue664"
},
{
"font_class": "gear-filled",
"unicode": "\ue661"
},
{
"font_class": "gift",
"unicode": "\ue6a4"
},
{
"font_class": "gift-filled",
"unicode": "\ue6c4"
},
{
"font_class": "hand-down",
"unicode": "\ue63d"
},
{
"font_class": "hand-down-filled",
"unicode": "\ue63c"
},
{
"font_class": "hand-up",
"unicode": "\ue63f"
},
{
"font_class": "hand-up-filled",
"unicode": "\ue63e"
},
{
"font_class": "headphones",
"unicode": "\ue630"
},
{
"font_class": "heart",
"unicode": "\ue639"
},
{
"font_class": "heart-filled",
"unicode": "\ue641"
},
{
"font_class": "help",
"unicode": "\ue679"
},
{
"font_class": "help-filled",
"unicode": "\ue674"
},
{
"font_class": "home",
"unicode": "\ue662"
},
{
"font_class": "home-filled",
"unicode": "\ue663"
},
{
"font_class": "image",
"unicode": "\ue670"
},
{
"font_class": "image-filled",
"unicode": "\ue678"
},
{
"font_class": "images",
"unicode": "\ue650"
},
{
"font_class": "images-filled",
"unicode": "\ue64b"
},
{
"font_class": "info",
"unicode": "\ue669"
},
{
"font_class": "info-filled",
"unicode": "\ue649"
},
{
"font_class": "left",
"unicode": "\ue6b7"
},
{
"font_class": "link",
"unicode": "\ue6a5"
},
{
"font_class": "list",
"unicode": "\ue644"
},
{
"font_class": "location",
"unicode": "\ue6ae"
},
{
"font_class": "location-filled",
"unicode": "\ue6af"
},
{
"font_class": "locked",
"unicode": "\ue66b"
},
{
"font_class": "locked-filled",
"unicode": "\ue668"
},
{
"font_class": "loop",
"unicode": "\ue633"
},
{
"font_class": "mail-open",
"unicode": "\ue643"
},
{
"font_class": "mail-open-filled",
"unicode": "\ue63a"
},
{
"font_class": "map",
"unicode": "\ue667"
},
{
"font_class": "map-filled",
"unicode": "\ue666"
},
{
"font_class": "map-pin",
"unicode": "\ue6ad"
},
{
"font_class": "map-pin-ellipse",
"unicode": "\ue6ac"
},
{
"font_class": "medal",
"unicode": "\ue6a2"
},
{
"font_class": "medal-filled",
"unicode": "\ue6c3"
},
{
"font_class": "mic",
"unicode": "\ue671"
},
{
"font_class": "mic-filled",
"unicode": "\ue677"
},
{
"font_class": "micoff",
"unicode": "\ue67e"
},
{
"font_class": "micoff-filled",
"unicode": "\ue6b0"
},
{
"font_class": "minus",
"unicode": "\ue66f"
},
{
"font_class": "minus-filled",
"unicode": "\ue67d"
},
{
"font_class": "more",
"unicode": "\ue64d"
},
{
"font_class": "more-filled",
"unicode": "\ue64e"
},
{
"font_class": "navigate",
"unicode": "\ue66e"
},
{
"font_class": "navigate-filled",
"unicode": "\ue67a"
},
{
"font_class": "notification",
"unicode": "\ue6a6"
},
{
"font_class": "notification-filled",
"unicode": "\ue6c1"
},
{
"font_class": "paperclip",
"unicode": "\ue652"
},
{
"font_class": "paperplane",
"unicode": "\ue672"
},
{
"font_class": "paperplane-filled",
"unicode": "\ue675"
},
{
"font_class": "person",
"unicode": "\ue699"
},
{
"font_class": "person-filled",
"unicode": "\ue69d"
},
{
"font_class": "personadd",
"unicode": "\ue69f"
},
{
"font_class": "personadd-filled",
"unicode": "\ue698"
},
{
"font_class": "personadd-filled-copy",
"unicode": "\ue6d1"
},
{
"font_class": "phone",
"unicode": "\ue69c"
},
{
"font_class": "phone-filled",
"unicode": "\ue69b"
},
{
"font_class": "plus",
"unicode": "\ue676"
},
{
"font_class": "plus-filled",
"unicode": "\ue6c7"
},
{
"font_class": "plusempty",
"unicode": "\ue67b"
},
{
"font_class": "pulldown",
"unicode": "\ue632"
},
{
"font_class": "pyq",
"unicode": "\ue682"
},
{
"font_class": "qq",
"unicode": "\ue680"
},
{
"font_class": "redo",
"unicode": "\ue64a"
},
{
"font_class": "redo-filled",
"unicode": "\ue655"
},
{
"font_class": "refresh",
"unicode": "\ue657"
},
{
"font_class": "refresh-filled",
"unicode": "\ue656"
},
{
"font_class": "refreshempty",
"unicode": "\ue6bf"
},
{
"font_class": "reload",
"unicode": "\ue6b2"
},
{
"font_class": "right",
"unicode": "\ue6b5"
},
{
"font_class": "scan",
"unicode": "\ue62a"
},
{
"font_class": "search",
"unicode": "\ue654"
},
{
"font_class": "settings",
"unicode": "\ue653"
},
{
"font_class": "settings-filled",
"unicode": "\ue6ce"
},
{
"font_class": "shop",
"unicode": "\ue62f"
},
{
"font_class": "shop-filled",
"unicode": "\ue6cd"
},
{
"font_class": "smallcircle",
"unicode": "\ue67c"
},
{
"font_class": "smallcircle-filled",
"unicode": "\ue665"
},
{
"font_class": "sound",
"unicode": "\ue684"
},
{
"font_class": "sound-filled",
"unicode": "\ue686"
},
{
"font_class": "spinner-cycle",
"unicode": "\ue68a"
},
{
"font_class": "staff",
"unicode": "\ue6a7"
},
{
"font_class": "staff-filled",
"unicode": "\ue6cb"
},
{
"font_class": "star",
"unicode": "\ue688"
},
{
"font_class": "star-filled",
"unicode": "\ue68f"
},
{
"font_class": "starhalf",
"unicode": "\ue683"
},
{
"font_class": "trash",
"unicode": "\ue687"
},
{
"font_class": "trash-filled",
"unicode": "\ue685"
},
{
"font_class": "tune",
"unicode": "\ue6aa"
},
{
"font_class": "tune-filled",
"unicode": "\ue6ca"
},
{
"font_class": "undo",
"unicode": "\ue64f"
},
{
"font_class": "undo-filled",
"unicode": "\ue64c"
},
{
"font_class": "up",
"unicode": "\ue6b6"
},
{
"font_class": "top",
"unicode": "\ue6b6"
},
{
"font_class": "upload",
"unicode": "\ue690"
},
{
"font_class": "upload-filled",
"unicode": "\ue68e"
},
{
"font_class": "videocam",
"unicode": "\ue68c"
},
{
"font_class": "videocam-filled",
"unicode": "\ue689"
},
{
"font_class": "vip",
"unicode": "\ue6a8"
},
{
"font_class": "vip-filled",
"unicode": "\ue6c6"
},
{
"font_class": "wallet",
"unicode": "\ue6b1"
},
{
"font_class": "wallet-filled",
"unicode": "\ue6c2"
},
{
"font_class": "weibo",
"unicode": "\ue68b"
},
{
"font_class": "weixin",
"unicode": "\ue691"
}
]
// export const fontData = JSON.parse<IconsDataItem>(fontDataJson)

View File

@ -0,0 +1,89 @@
{
"id": "uni-icons",
"displayName": "uni-icons 图标",
"version": "2.0.10",
"description": "图标组件,用于展示移动端常见的图标,可自定义颜色、大小。",
"keywords": [
"uni-ui",
"uniui",
"icon",
"图标"
],
"repository": "https://github.com/dcloudio/uni-ui",
"engines": {
"HBuilderX": "^3.2.14"
},
"directories": {
"example": "../../temps/example_temps"
},
"dcloudext": {
"sale": {
"regular": {
"price": "0.00"
},
"sourcecode": {
"price": "0.00"
}
},
"contact": {
"qq": ""
},
"declaration": {
"ads": "无",
"data": "无",
"permissions": "无"
},
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
},
"uni_modules": {
"dependencies": ["uni-scss"],
"encrypt": [],
"platforms": {
"cloud": {
"tcb": "y",
"aliyun": "y",
"alipay": "n"
},
"client": {
"App": {
"app-vue": "y",
"app-nvue": "y",
"app-uvue": "y"
},
"H5-mobile": {
"Safari": "y",
"Android Browser": "y",
"微信浏览器(Android)": "y",
"QQ浏览器(Android)": "y"
},
"H5-pc": {
"Chrome": "y",
"IE": "y",
"Edge": "y",
"Firefox": "y",
"Safari": "y"
},
"小程序": {
"微信": "y",
"阿里": "y",
"百度": "y",
"字节跳动": "y",
"QQ": "y",
"钉钉": "y",
"快手": "y",
"飞书": "y",
"京东": "y"
},
"快应用": {
"华为": "y",
"联盟": "y"
},
"Vue": {
"vue2": "y",
"vue3": "y"
}
}
}
}
}

View File

@ -0,0 +1,8 @@
## Icons 图标
> **组件名uni-icons**
> 代码块: `uIcons`
用于展示 icons 图标 。
### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-icons)
#### 如使用过程中有任何问题或者您对uni-ui有一些好的建议欢迎加入 uni-ui 交流群871950839

View File

@ -0,0 +1,18 @@
## 1.1.22024-03-28
- 修复 uni-steps为竖排列时文本长度过长引起点错乱的bug
## 1.1.12021-11-22
- 修复 vue3中某些scss变量无法找到的问题
## 1.1.02021-11-19
- 优化 组件UI并提供设计资源详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource)
- 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-steps](https://uniapp.dcloud.io/component/uniui/uni-steps)
## 1.0.82021-05-12
- 新增 项目示例地址
## 1.0.72021-05-06
- 修复 uni-steps 横向布局时,多行文字高度不合理的 bug
## 1.0.62021-04-21
- 优化 添加依赖 uni-icons, 导入后自动下载依赖
## 1.0.52021-02-05
- 优化 组件引用关系通过uni_modules引用组件
## 1.0.42021-02-05
- 调整为uni_modules目录规范

View File

@ -0,0 +1,280 @@
<template>
<view class="uni-steps">
<view :class="[direction==='column'?'uni-steps__column':'uni-steps__row']">
<view :class="[direction==='column'?'uni-steps__column-text-container':'uni-steps__row-text-container']">
<view v-for="(item,index) in options" :key="index"
:class="[direction==='column'?'uni-steps__column-text':'uni-steps__row-text']">
<text :style="{color:index === active?activeColor:deactiveColor}"
:class="[direction==='column'?'uni-steps__column-title':'uni-steps__row-title']">{{item.title}}</text>
<text :style="{color: deactiveColor}"
:class="[direction==='column'?'uni-steps__column-desc':'uni-steps__row-desc']">{{item.desc}}</text>
</view>
</view>
<view :class="[direction==='column'?'uni-steps__column-container':'uni-steps__row-container']">
<view :class="[direction==='column'?'uni-steps__column-line-item':'uni-steps__row-line-item']"
v-for="(item,index) in options" :key="index" :style="{height: direction === 'column'?heightArr[index]+'px':'14px'}">
<view
:class="[direction==='column'?'uni-steps__column-line':'uni-steps__row-line',direction==='column'?'uni-steps__column-line--before':'uni-steps__row-line--before']"
:style="{backgroundColor:index<=active&&index!==0?activeColor:index===0?'transparent':deactiveColor}">
</view>
<view :class="[direction==='column'?'uni-steps__column-check':'uni-steps__row-check']"
v-if="index === active">
<uni-icons :color="activeColor" :type="activeIcon" size="14" />
</view>
<view v-else :class="[direction==='column'?'uni-steps__column-circle':'uni-steps__row-circle']"
:style="{backgroundColor:index<active?activeColor:deactiveColor}" />
<view
:class="[direction==='column'?'uni-steps__column-line':'uni-steps__row-line',direction==='column'?'uni-steps__column-line--after':'uni-steps__row-line--after']"
:style="{backgroundColor:index<active&&index!==options.length-1?activeColor:index===options.length-1?'transparent':deactiveColor}" />
</view>
</view>
</view>
</view>
</template>
<script>
/**
* Steps 步骤条
* @description 评分组件
* @tutorial https://ext.dcloud.net.cn/plugin?id=34
* @property {Number} active 当前步骤
* @property {String} direction = [row|column] 当前步骤
* @value row 横向
* @value column 纵向
* @property {String} activeColor 选中状态的颜色
* @property {Array} options 数据源格式为[{title:'xxx',desc:'xxx'},{title:'xxx',desc:'xxx'}]
*/
export default {
name: 'UniSteps',
props: {
direction: {
// row column
type: String,
default: 'row'
},
activeColor: {
//
type: String,
default: '#2979FF'
},
deactiveColor: {
//
type: String,
default: '#B7BDC6'
},
active: {
//
type: Number,
default: 0
},
activeIcon: {
//
type: String,
default: 'checkbox-filled'
},
options: {
type: Array,
default () {
return []
}
} //
},
data() {
return {
heightArr: [],
}
},
mounted() {
//
if (this.direction === 'column') {
let that = this;
//id
uni.createSelectorQuery().in(this).selectAll('.uni-steps__column-text').boundingClientRect(data => {
that.heightArr = data.map(item => item.height + 1);
}).exec()
}
},
}
</script>
<style lang="scss">
$uni-primary: #2979ff !default;
$uni-border-color: #EDEDED;
.uni-steps {
/* #ifndef APP-NVUE */
display: flex;
width: 100%;
/* #endif */
/* #ifdef APP-NVUE */
flex: 1;
/* #endif */
flex-direction: column;
}
.uni-steps__row {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: column;
}
.uni-steps__column {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: row-reverse;
}
.uni-steps__row-text-container {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: row;
align-items: flex-end;
margin-bottom: 8px;
}
.uni-steps__column-text-container {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: column;
flex: 1;
}
.uni-steps__row-text {
/* #ifndef APP-NVUE */
display: inline-flex;
/* #endif */
flex: 1;
flex-direction: column;
}
.uni-steps__column-text {
padding: 6px 0px;
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: $uni-border-color;
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: column;
}
.uni-steps__row-title {
font-size: 14px;
line-height: 16px;
text-align: center;
}
.uni-steps__column-title {
font-size: 14px;
text-align: left;
line-height: 18px;
}
.uni-steps__row-desc {
font-size: 12px;
line-height: 14px;
text-align: center;
}
.uni-steps__column-desc {
font-size: 12px;
text-align: left;
line-height: 18px;
}
.uni-steps__row-container {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: row;
}
.uni-steps__column-container {
/* #ifndef APP-NVUE */
display: inline-flex;
/* #endif */
width: 30px;
flex-direction: column;
}
.uni-steps__row-line-item {
/* #ifndef APP-NVUE */
display: inline-flex;
/* #endif */
flex-direction: row;
flex: 1;
height: 14px;
line-height: 14px;
align-items: center;
justify-content: center;
}
.uni-steps__column-line-item {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex-direction: column;
align-items: center;
justify-content: center;
}
.uni-steps__row-line {
flex: 1;
height: 1px;
background-color: #B7BDC6;
}
.uni-steps__column-line {
width: 1px;
background-color: #B7BDC6;
}
.uni-steps__row-line--after {
transform: translateX(1px);
}
.uni-steps__column-line--after {
flex: 1;
transform: translate(0px, 1px);
}
.uni-steps__row-line--before {
transform: translateX(-1px);
}
.uni-steps__column-line--before {
height: 6px;
transform: translate(0px, -13px);
}
.uni-steps__row-circle {
width: 5px;
height: 5px;
border-radius: 50%;
background-color: #B7BDC6;
margin: 0px 3px;
}
.uni-steps__column-circle {
width: 5px;
height: 5px;
border-radius: 50%;
background-color: #B7BDC6;
margin: 4px 0px 5px 0px;
}
.uni-steps__row-check {
margin: 0px 6px;
}
.uni-steps__column-check {
height: 14px;
line-height: 14px;
margin: 2px 0px;
}
</style>

View File

@ -0,0 +1,87 @@
{
"id": "uni-steps",
"displayName": "uni-steps 步骤条",
"version": "1.1.2",
"description": "步骤条组件,提供横向和纵向两种布局格式。",
"keywords": [
"uni-ui",
"uniui",
"步骤条",
"时间轴"
],
"repository": "https://github.com/dcloudio/uni-ui",
"engines": {
"HBuilderX": ""
},
"directories": {
"example": "../../temps/example_temps"
},
"dcloudext": {
"sale": {
"regular": {
"price": "0.00"
},
"sourcecode": {
"price": "0.00"
}
},
"contact": {
"qq": ""
},
"declaration": {
"ads": "无",
"data": "无",
"permissions": "无"
},
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
},
"uni_modules": {
"dependencies": [
"uni-scss",
"uni-icons"
],
"encrypt": [],
"platforms": {
"cloud": {
"tcb": "y",
"aliyun": "y",
"alipay": "n"
},
"client": {
"App": {
"app-vue": "y",
"app-nvue": "y"
},
"H5-mobile": {
"Safari": "y",
"Android Browser": "y",
"微信浏览器(Android)": "y",
"QQ浏览器(Android)": "y"
},
"H5-pc": {
"Chrome": "y",
"IE": "y",
"Edge": "y",
"Firefox": "y",
"Safari": "y"
},
"小程序": {
"微信": "y",
"阿里": "y",
"百度": "y",
"字节跳动": "y",
"QQ": "y"
},
"快应用": {
"华为": "u",
"联盟": "u"
},
"Vue": {
"vue2": "y",
"vue3": "y"
}
}
}
}
}

View File

@ -0,0 +1,13 @@
## Steps 步骤条
> **组件名uni-steps**
> 代码块: `uSteps`
步骤条,常用于显示进度
### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-steps)
#### 如使用过程中有任何问题或者您对uni-ui有一些好的建议欢迎加入 uni-ui 交流群871950839

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}

View File

@ -0,0 +1,76 @@
<template>
<view class="main">
<view class="head" :class="headShow?'head_show':''" :style="{'opacity':headShow?opacity:'1','padding-top':statusBartop+'px'}">
<view class="head_back" @click="handleBack()" :style="{'width': statusHeight+'px','height':statusHeight+'px'}">
<image class="head_back_img" src="https://zhkj1.oss-cn-shanghai.aliyuncs.com/newPD/zhBack.png" mode="widthFix"></image>
</view>
<view class="head_title" :style="{'width':pageWidth+'px','height':statusHeight+'px'}">客户服务</view>
</view>
<view style="height: 2000rpx;"></view>
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop,ButtonWidth,ButtonHeight } = storeToRefs(counterStore);
const headShow = ref(false);
const showBack = ref(false);
const pageWidth = ref(0);
//
const updatePageWidth = () => {
const systemInfo = uni.getSystemInfoSync();
pageWidth.value = systemInfo.windowWidth;
};
const searchWidth = computed(() => {
return pageWidth.value - statusHeight.value - ButtonWidth.value - 35;
});
//
const getPages = () => {
const pages = getCurrentPages();
return pages.length > 1;
};
const handleBack = () => {
if (getPages()) {
//
uni.navigateBack();
} else {
//
uni.switchTab({
url: '/pages/index/index',
});
}
};
onLoad((options) => {
//
showBack.value = getPages();
updatePageWidth();
});
onShow(() => {});
onPageScroll((e)=>{
const top = e.scrollTop;
//
if (top <= 50) {
headShow.value = false
} else {
if( 50 < top && top <= 200 ){
opacity.value = top / 200
}else{
opacity.value = 1
}
headShow.value = true
}
}),
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,50 @@
page{
background-color: #f6f6f6;
}
.main{
background: url(https://zhkj1.oss-cn-shanghai.aliyuncs.com/zhscMerchant/user_bcg.png) #f6f6f6;
background-repeat: no-repeat;
background-size: 100%;
.head{
position: fixed;
z-index: 100;
width: 100%;
top: 0;
left: 0;
padding-bottom: 10px;
display: flex;
align-items: center;
.head_back{
display: flex;
align-items: center;
background: rgba(255,255,255,.6);
border: 1rpx solid rgba(0,0,0,.1);
border-radius: 50rpx;
margin-left: 10px;
position: absolute;
left: 10px;
z-index: 2;
.head_back_img{
display: block;
width: 16px;
height: 16px;
margin-left: 7px;
}
}
.head_title{
position: absolute;
z-index: 1;
font-size: 34rpx;
color: '#000000';
display: flex;
align-items: center;
font-weight: 500;
justify-content: center;
}
}
.head_show{
background-color: #FFFFFF;
border-bottom: 1rpx solid #f6f6f6;
}
}

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}

View File

@ -0,0 +1,25 @@
<template>
<view class="main">
</view>
</template>
<script setup>
import { computed,ref,onMounted,onUnmounted,getCurrentInstance,nextTick } from 'vue';
import { useCounterStore } from '@/store/counter'; // Pinia Store
import { storeToRefs } from 'pinia';//
import { onLoad,onShow,onPullDownRefresh,onPageScroll,onReachBottom,onReady } from "@dcloudio/uni-app"
const counterStore = useCounterStore(); // 使 Store
const { proxy } = getCurrentInstance();
//使piniastoreToRefs(使)
const {statusHeight,headerHeight,statusBartop } = storeToRefs(counterStore);
onLoad((options) => {});
onShow(() => {});
onReady(()=>{})
onPullDownRefresh(()=>{})
onReachBottom(()=>{})
</script>
<style lang="scss">
@import './style.scss';
</style>

View File

@ -0,0 +1,6 @@
page{
background-color: #f6f6f6;
}
.main{
}