ld0104
2 years ago
22 changed files with 2650 additions and 1371 deletions
@ -1,8 +1,8 @@ |
|||||||
// export const VUE_APP_API_URL = 'http://192.168.10.129:48080/bxgApp'
|
// export const VUE_APP_API_URL = 'http://192.168.10.129:48080/bxgApp'
|
||||||
// export const VUE_APP_API_URL = 'http://192.168.10.113:48080/bxgApp'
|
export const VUE_APP_API_URL = 'http://192.168.10.113:48080/bxgApp' |
||||||
export const VUE_APP_API_URL = 'https://farm.lotus-wallet.com/bxgApp' |
// export const VUE_APP_API_URL = 'https://farm.lotus-wallet.com/bxgApp'
|
||||||
// export const VUE_APP_API_URL = 'https://xiaohui.shop.cyjyyjy.com/xiaohuiapp'
|
// export const VUE_APP_API_URL = 'https://xiaohui.shop.cyjyyjy.com/xiaohuiapp'
|
||||||
export const VUE_APP_RESOURCES_URL = 'https://h5.yixiang.co/static' |
export const VUE_APP_RESOURCES_URL = 'https://h5.yixiang.co/static' |
||||||
export const BXG_TENANT_ID = 129 |
// export const BXG_TENANT_ID = 129
|
||||||
// export const BXG_TENANT_ID = 138
|
export const BXG_TENANT_ID = 138 |
||||||
// export const BXG_TENANT_ID = 128
|
// export const BXG_TENANT_ID = 128
|
@ -0,0 +1,433 @@ |
|||||||
|
<template> |
||||||
|
<view class="product-con"> |
||||||
|
<view class="header"> |
||||||
|
<cu-custom :isBack="true" :isCenter="true" > |
||||||
|
<block slot="backText"> |
||||||
|
<view class="backImg"> |
||||||
|
<image src="@/static/images/back-btn.png" mode=""></image> |
||||||
|
</view> |
||||||
|
</block> |
||||||
|
</cu-custom> |
||||||
|
</view> |
||||||
|
|
||||||
|
<!-- 商品轮播 --> |
||||||
|
<product-con-swiper :imgUrls="imgUrls"></product-con-swiper> |
||||||
|
|
||||||
|
<view class="tui-pro-detail"> |
||||||
|
<view class="activity-info-box"> |
||||||
|
<view class="tui-right__box"> |
||||||
|
<view class="acea-row row-middle row-center"> |
||||||
|
<view class="iconfont icon-kanjia"></view> |
||||||
|
<text>砍价活动</text> |
||||||
|
</view> |
||||||
|
<view class="count-down-box"> |
||||||
|
<count-down :isSecond="false" :datatime="goodsDetail.stopTime" :styleAllStyle="styleAllStyle" :timeTxtStyle="timeTxtStyle"></count-down> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view class="tui-pro-price"> |
||||||
|
<text class="tui-price">¥{{goodsDetail.minPrice}}</text> |
||||||
|
<view class="tui-original-price">¥{{goodsDetail.price}}</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view class="tui-pro-title">{{ goodsDetail.title }}</view> |
||||||
|
<view class="tui-pro-info">{{ goodsDetail.info }}</view> |
||||||
|
<view class="tui-sale-info"> |
||||||
|
<view class="tips acea-row"> |
||||||
|
<view class="tip">甄选品牌</view> |
||||||
|
</view> |
||||||
|
<view>库存:{{ goodsDetail.stock }}{{ goodsDetail.unitName }}</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view class="safeguard-info acea-row row-between-wrapper"> |
||||||
|
<view class="safeguard-item"> |
||||||
|
<image class="img" src="@/static/images/by.png" mode=""></image> |
||||||
|
<view>满{{199}}包邮</view> |
||||||
|
</view> |
||||||
|
<view class="line"></view> |
||||||
|
<view class="safeguard-item"> |
||||||
|
<image class="img" src="@/static/images/fxt.png" mode=""></image> |
||||||
|
<view>7天无理由</view> |
||||||
|
</view> |
||||||
|
<view class="line"></view> |
||||||
|
<view class="safeguard-item"> |
||||||
|
<image class="img" src="@/static/images/bj.png" mode=""></image> |
||||||
|
<view>30天保价</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<!-- 用户评价 --> |
||||||
|
<!-- <view class="userEvaluation" v-if="replyCount"> |
||||||
|
<view class="title acea-row row-between-wrapper" @click="goEvaluateList(storeInfo.productId)"> |
||||||
|
<view class="acea-row row-middle"><text>评价</text><text class="replyCount">{{ replyCount }}</text></view> |
||||||
|
<view @click="goEvaluateList(id)" class="praise acea-row row-middle"> |
||||||
|
<view>好评率{{ replyChance }}%</view> |
||||||
|
<view class="jiantou-right"></view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<user-evaluation :reply="reply"></user-evaluation> |
||||||
|
</view> --> |
||||||
|
|
||||||
|
<view class="product-intro"> |
||||||
|
<view class="title">商品展示</view> |
||||||
|
<view class="conter" v-html="goodsDetail.description"></view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view :style="addBottom?'height: 162rpx;':'height: 122rpx;'"></view> |
||||||
|
<!--底部操作栏--> |
||||||
|
<view class="tui-operation acea-row row-between" :style="addBottom?'height: 162rpx;':'height: 122rpx;'"> |
||||||
|
<view class="tui-operation-left acea-row row-between"> |
||||||
|
<!-- #ifdef MP-WEIXIN --> |
||||||
|
<button class="tui-operation-item" open-type="contact" hover-class="tui-opcity" :hover-stay-time="150"> |
||||||
|
<image src="@/static/images/service-icon.png" mode=""></image> |
||||||
|
<view class="tui-operation-text">客服</view> |
||||||
|
</button> |
||||||
|
<!-- #endif --> |
||||||
|
|
||||||
|
<view @click="goShoppingCart" class="tui-operation-item"> |
||||||
|
<image src="@/static/images/cart-icon.png" mode=""></image> |
||||||
|
<view class="tui-operation-text">购物车</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<!-- <view class="tui-operation-item" hover-class="tui-opcity" :hover-stay-time="150" @click="setCollect"> |
||||||
|
<image v-if="userCollect" src="@/static/images/star-light.png" mode=""></image> |
||||||
|
<image v-else src="@/static/images/star.png" mode=""></image> |
||||||
|
<view class="tui-operation-text">{{userCollect?'已收藏':'收藏'}}</view> |
||||||
|
</view> --> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view class="tui-operation-right acea-row"> |
||||||
|
<view class="btn other-col" @click="openAlone">原价购买</view> |
||||||
|
<view class="btn" @click="goDargain">发起砍价</view> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
|
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import ProductConSwiper from '@/components/ProductConSwiper'; |
||||||
|
import CountDown from '@/components/CountDown'; |
||||||
|
import { getBargainDetail } from '@/api/activity'; |
||||||
|
import { handleQrCode } from '@/utils/index' |
||||||
|
export default { |
||||||
|
components: { |
||||||
|
ProductConSwiper, |
||||||
|
CountDown, |
||||||
|
}, |
||||||
|
data() { |
||||||
|
return { |
||||||
|
addBottom: this.addBottom, |
||||||
|
goodsDetail: {}, |
||||||
|
bargainId: 0, |
||||||
|
bargainUid: 0, |
||||||
|
imgUrls: [], |
||||||
|
styleAllStyle: 'width:30rpx;height:24rpx;background:#F5F6F8;border-radius:8rpx;font-size:20rpx;color:#3A3A3C;line-height:24rpx;', |
||||||
|
timeTxtStyle: 'font-size:20rpx;color:#F5F6F8;line-height:24rpx;padding:0rpx 4rpx;', |
||||||
|
}; |
||||||
|
}, |
||||||
|
onLoad() { |
||||||
|
let url = handleQrCode() |
||||||
|
// bargainId 砍价商品id |
||||||
|
// bargainUid 发起砍价人 |
||||||
|
if (url) { |
||||||
|
// 通过二维码进来 |
||||||
|
this.bargainId = url.bargainId |
||||||
|
// this.bargainUid = url.partake |
||||||
|
} else { |
||||||
|
// 正常途径进来 |
||||||
|
this.bargainId = this.$yroute.query.id |
||||||
|
// this.bargainUid = this.$yroute.query.partake |
||||||
|
} |
||||||
|
// if (this.bargainUid == 0 || !this.bargainUid) { |
||||||
|
// // url未携带用户uid,填上登录用户uid,跳转 |
||||||
|
// this.bargainUid = this.userInfo.uid |
||||||
|
// } |
||||||
|
this.getBargainDetail(); |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
// 获取产品详情 |
||||||
|
getBargainDetail() { |
||||||
|
uni.showLoading({ |
||||||
|
title: '加载中', |
||||||
|
mask: true, |
||||||
|
}) |
||||||
|
getBargainDetail(this.bargainId).then(res => { |
||||||
|
uni.hideLoading() |
||||||
|
this.goodsDetail = res.data.bargain; |
||||||
|
this.imgUrls.push(this.goodsDetail.image); |
||||||
|
// console.log(this.goodsDetail); |
||||||
|
this.goodsDetail.description = this.goodsDetail.description.replace(/\<img/gi, '<img style="max-width:100%;height:auto;"'); |
||||||
|
this.goodsDetail.rule = this.goodsDetail.rule.replace(/\<img/gi, '<img style="max-width:100%;height:auto;"'); |
||||||
|
}).catch(res => { |
||||||
|
uni.hideLoading() |
||||||
|
uni.showToast({ |
||||||
|
title: res.msg, |
||||||
|
icon: 'none', |
||||||
|
duration: 2000, |
||||||
|
}) |
||||||
|
}) |
||||||
|
}, |
||||||
|
goShoppingCart() { |
||||||
|
uni.setStorageSync('pathToCart', '/pages/activity/DargainGoodsDetails/index?id='+ this.bargainId +'&partake=0'); |
||||||
|
this.$yrouter.switchTab('/pages/shop/ShoppingCart/index'); |
||||||
|
}, |
||||||
|
// 单独购买 |
||||||
|
openAlone() { |
||||||
|
this.$yrouter.push({ |
||||||
|
path: '/pages/shop/GoodsCon/index', |
||||||
|
query: { |
||||||
|
id: this.goodsDetail.productId, |
||||||
|
}, |
||||||
|
}) |
||||||
|
}, |
||||||
|
goDargain() { |
||||||
|
this.$yrouter.push({ |
||||||
|
path: "/pages/activity/DargainDetails/index", |
||||||
|
query: { id: this.bargainId, partake: 0 } |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="less" scoped> |
||||||
|
.header { |
||||||
|
.tab-title { |
||||||
|
font-size: 32rpx; |
||||||
|
font-family: PingFang SC; |
||||||
|
font-weight: 600; |
||||||
|
color: #2DB5AE; |
||||||
|
line-height: 42rpx; |
||||||
|
} |
||||||
|
.backImg { |
||||||
|
width: 88rpx; |
||||||
|
height: 62rpx; |
||||||
|
padding-left: 26rpx; |
||||||
|
image { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tui-pro-detail { |
||||||
|
margin: 8rpx 32rpx 20rpx; |
||||||
|
width: 686rpx; |
||||||
|
// height: 230rpx; |
||||||
|
background: #F5F6F8; |
||||||
|
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); |
||||||
|
border-radius: 16rpx; |
||||||
|
padding: 24rpx; |
||||||
|
|
||||||
|
position: relative; |
||||||
|
} |
||||||
|
|
||||||
|
.activity-info-box { |
||||||
|
position: absolute; |
||||||
|
top: 0rpx; |
||||||
|
right: 24rpx; |
||||||
|
width: 220rpx; |
||||||
|
height: 74rpx; |
||||||
|
overflow: hidden; |
||||||
|
.tui-right__box { |
||||||
|
padding-top: 8rpx; |
||||||
|
width: 188rpx; |
||||||
|
height: 74rpx; |
||||||
|
background: #2DB5AE; |
||||||
|
border-radius: 0rpx 0rpx 16rpx 16rpx; |
||||||
|
position: relative; |
||||||
|
z-index: 1; |
||||||
|
margin: 0rpx 16rpx; |
||||||
|
font-size: 20rpx; |
||||||
|
font-family: PingFang SC; |
||||||
|
font-weight: 600; |
||||||
|
color: #FFFFFF; |
||||||
|
line-height: 26rpx; |
||||||
|
.iconfont.icon-kanjia { |
||||||
|
font-size: 26rpx; |
||||||
|
font-weight: 500; |
||||||
|
line-height: 26rpx; |
||||||
|
margin-right: 6rpx; |
||||||
|
} |
||||||
|
.count-down-box { |
||||||
|
padding-top: 6rpx; |
||||||
|
padding-left: 10rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
.tui-right__box::after { |
||||||
|
width: 32rpx; |
||||||
|
height: 32rpx; |
||||||
|
content: ""; |
||||||
|
position: absolute; |
||||||
|
top: 0; |
||||||
|
left: -32rpx; |
||||||
|
border-radius: 16rpx; |
||||||
|
box-shadow: 16rpx -16rpx 0rpx #2DB5AE; |
||||||
|
} |
||||||
|
.tui-right__box::before { |
||||||
|
width: 32rpx; |
||||||
|
height: 32rpx; |
||||||
|
content: ""; |
||||||
|
position: absolute; |
||||||
|
top: 0; |
||||||
|
right: -32rpx; |
||||||
|
border-radius: 16rpx; |
||||||
|
box-shadow: -16rpx -16rpx 0rpx #2DB5AE; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tui-pro-price { |
||||||
|
font-size: 48rpx; |
||||||
|
font-family: Futura; |
||||||
|
font-weight: 600; |
||||||
|
color: #3A3A3C; |
||||||
|
line-height: 64rpx; |
||||||
|
display: flex; |
||||||
|
.tui-original-price { |
||||||
|
padding-top: 18rpx; |
||||||
|
font-size: 30rpx; |
||||||
|
font-family: Futura; |
||||||
|
font-weight: 600; |
||||||
|
color: #999999; |
||||||
|
line-height: 40rpx; |
||||||
|
padding-left: 16rpx; |
||||||
|
text-decoration: line-through; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tui-pro-title { |
||||||
|
font-size: 34rpx; |
||||||
|
font-family: SourceHanSansSCVF; |
||||||
|
font-weight: 600; |
||||||
|
color: #3A3A3C; |
||||||
|
line-height: 50rpx; |
||||||
|
} |
||||||
|
.tui-pro-info { |
||||||
|
font-size: 20rpx; |
||||||
|
font-family: SourceHanSansSCVF; |
||||||
|
font-weight: 600; |
||||||
|
color: #999999; |
||||||
|
line-height: 28rpx; |
||||||
|
} |
||||||
|
|
||||||
|
.tui-sale-info { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: space-between; |
||||||
|
padding-top: 16rpx; |
||||||
|
font-size: 20rpx; |
||||||
|
font-family: SourceHanSansSCVF; |
||||||
|
font-weight: 500; |
||||||
|
color: #999999; |
||||||
|
line-height: 28rpx; |
||||||
|
.tips { |
||||||
|
padding-top: 4rpx; |
||||||
|
.tip { |
||||||
|
width: 80rpx; |
||||||
|
height: 26rpx; |
||||||
|
background: #2DB5AE; |
||||||
|
border-radius: 6rpx; |
||||||
|
margin-right: 4rpx; |
||||||
|
font-size: 16rpx; |
||||||
|
font-family: PingFang SC; |
||||||
|
color: #FFFFFF; |
||||||
|
line-height: 26rpx; |
||||||
|
text-align: center; |
||||||
|
margin-right: 20rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.safeguard-info { |
||||||
|
width: 686rpx; |
||||||
|
height: 120rpx; |
||||||
|
background: #F5F6F8; |
||||||
|
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); |
||||||
|
border-radius: 16rpx; |
||||||
|
padding: 18rpx 0rpx; |
||||||
|
margin: 0rpx 32rpx 20rpx; |
||||||
|
.safeguard-item { |
||||||
|
width: 226rpx; |
||||||
|
font-size: 20rpx; |
||||||
|
font-family: SourceHanSansSCVF; |
||||||
|
font-weight: 600; |
||||||
|
color: #999999; |
||||||
|
line-height: 28rpx; |
||||||
|
text-align: center; |
||||||
|
.img { |
||||||
|
width: 46rpx; |
||||||
|
height: 46rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
.line { |
||||||
|
width: 2rpx; |
||||||
|
height: 84rpx; |
||||||
|
background-color: #979797; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tui-operation { |
||||||
|
width: 100%; |
||||||
|
position: fixed; |
||||||
|
z-index: 100; |
||||||
|
bottom: 0; |
||||||
|
left: 0; |
||||||
|
background: #F1F1F1; |
||||||
|
box-shadow: 0rpx -4rpx 38rpx 0rpx rgba(0,0,0,0.2); |
||||||
|
border-radius: 28rpx 28rpx 0rpx 0rpx; |
||||||
|
.tui-operation-left { |
||||||
|
padding: 12rpx 28rpx; |
||||||
|
width: 220rpx; |
||||||
|
// width: 330rpx; |
||||||
|
.tui-operation-item { |
||||||
|
width: 60rpx; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
flex-direction: column; |
||||||
|
background: none; |
||||||
|
padding: 0; |
||||||
|
margin: 0; |
||||||
|
border: 0; |
||||||
|
|
||||||
|
image { |
||||||
|
width: 50rpx; |
||||||
|
height: 50rpx; |
||||||
|
} |
||||||
|
&:after { |
||||||
|
display: none; |
||||||
|
} |
||||||
|
.tui-operation-text { |
||||||
|
font-size: 20rpx; |
||||||
|
font-family: PingFang SC; |
||||||
|
font-weight: 500; |
||||||
|
color: #3A3A3C; |
||||||
|
line-height: 22rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.tui-operation-right { |
||||||
|
padding-top: 18rpx; |
||||||
|
padding-right: 18rpx; |
||||||
|
.btn { |
||||||
|
width: 186rpx; |
||||||
|
height: 66rpx; |
||||||
|
background: #2DB5AE; |
||||||
|
border-radius: 16rpx; |
||||||
|
font-size: 26rpx; |
||||||
|
font-family: PingFang SC; |
||||||
|
font-weight: 600; |
||||||
|
color: #FFFFFF; |
||||||
|
line-height: 66rpx; |
||||||
|
text-align: center; |
||||||
|
margin-right: 14rpx; |
||||||
|
} |
||||||
|
.other-col { |
||||||
|
background: #98DAD7; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
</style> |
File diff suppressed because it is too large
Load Diff
@ -1,302 +0,0 @@ |
|||||||
<template> |
|
||||||
<view> |
|
||||||
<view class="header"> |
|
||||||
<cu-custom :isBack="true" :isCenter="true"> |
|
||||||
<block slot="backText"> |
|
||||||
<view class="backImg"> |
|
||||||
<image src="@/static/images/back-btn.png" mode=""></image> |
|
||||||
</view> |
|
||||||
</block> |
|
||||||
<block slot="content"> |
|
||||||
<view class="tab-title">积分兑换</view> |
|
||||||
</block> |
|
||||||
</cu-custom> |
|
||||||
</view> |
|
||||||
|
|
||||||
<view class="banner-box"> |
|
||||||
<swiper class="swiper-wrapper" @change="handleChange" :autoplay="true"> |
|
||||||
<block v-for="(item, imgUrlsIndex) in imgUrls" :key="imgUrlsIndex"> |
|
||||||
<swiper-item> |
|
||||||
<view class="image">{{item}}</view> |
|
||||||
<!-- <image class="image" :src="item" class="slide-image" mode="aspectFill"/> --> |
|
||||||
</swiper-item> |
|
||||||
</block> |
|
||||||
</swiper> |
|
||||||
<view class="dots-box acea-row row-center"> |
|
||||||
<view class="dot" v-for="(item,index) in imgUrls" :key="index"> |
|
||||||
<view :class="(currents > index?'active2 ':'active ') + (currents == index?'on':(currents-1 == index?'on2':''))"></view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
|
|
||||||
<view class="integral-box acea-row row-between"> |
|
||||||
<view class="integral"> |
|
||||||
<view class="title">我的积分</view> |
|
||||||
<view class="acea-row"> |
|
||||||
<view class="item" v-for="(item, integralIndex) in integral" :key="integralIndex"> |
|
||||||
<view class="top"></view> |
|
||||||
<view class="bottom"></view> |
|
||||||
<view class="num">{{ item || 0 }}</view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
<view @click="goIntegral" class="btn acea-row row-between-wrapper"> |
|
||||||
<image src="@/static/images/mingxi.png" mode=""></image> |
|
||||||
<view>明细</view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
<view class="integral get-way acea-row row-column row-between"> |
|
||||||
<view class="title">获取积分</view> |
|
||||||
<view class="acea-row row-between"> |
|
||||||
<view class="btn2">去签到</view> |
|
||||||
<view class="btn2">去下单</view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
</view> |
|
||||||
|
|
||||||
<view class="list-box"> |
|
||||||
<view class="title">积分兑换</view> |
|
||||||
<PromotionGood :benefit="productList" :isIntegral="true" /> |
|
||||||
</view> |
|
||||||
|
|
||||||
</view> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script> |
|
||||||
import { mapGetters } from 'vuex'; |
|
||||||
import store from '@/store'; |
|
||||||
import PromotionGood from '@/components/PromotionGood'; |
|
||||||
import { getProductsIntegral } from '@/api/store'; |
|
||||||
export default { |
|
||||||
components: { |
|
||||||
PromotionGood |
|
||||||
}, |
|
||||||
data() { |
|
||||||
return { |
|
||||||
currents: 0, |
|
||||||
imgUrls: 5, |
|
||||||
integral: 0, |
|
||||||
from: { |
|
||||||
page: 1, |
|
||||||
limit: 15, |
|
||||||
// sid: 0, |
|
||||||
news: 0, |
|
||||||
isIntegral: 1 |
|
||||||
}, |
|
||||||
productList: [], |
|
||||||
}; |
|
||||||
}, |
|
||||||
computed: mapGetters(['userInfo']), |
|
||||||
onLoad() { |
|
||||||
getProductsIntegral(this.from).then(res => { |
|
||||||
this.productList.push.apply(this.productList, res.data); |
|
||||||
}) |
|
||||||
}, |
|
||||||
onShow() { |
|
||||||
if (this.$store.getters.token) { |
|
||||||
this.$store.dispatch('getUser', true); |
|
||||||
} |
|
||||||
if(this.userInfo.integral === undefined) this.userInfo.integral = 0; |
|
||||||
this.integral = this.prefixInteger(this.userInfo.integral, 5); |
|
||||||
console.log('userInfo', this.userInfo); |
|
||||||
}, |
|
||||||
methods: { |
|
||||||
handleChange(e) { |
|
||||||
this.currents = e.mp.detail.current; |
|
||||||
}, |
|
||||||
// 给数字补0;num:需要补0的数字,length:长度(补到多少位) |
|
||||||
prefixInteger(num, length) { |
|
||||||
return (Array(length).join("0") + num).slice(-length).split(""); |
|
||||||
}, |
|
||||||
goIntegral() { |
|
||||||
this.$yrouter.push('/pages/user/signIn/Integral/index') |
|
||||||
}, |
|
||||||
}, |
|
||||||
} |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="less" scoped> |
|
||||||
.header { |
|
||||||
.tab-title { |
|
||||||
font-size: 32rpx; |
|
||||||
font-family: PingFang SC; |
|
||||||
font-weight: 600; |
|
||||||
color: #2DB5AE; |
|
||||||
line-height: 42rpx; |
|
||||||
} |
|
||||||
.backImg { |
|
||||||
width: 88rpx; |
|
||||||
height: 62rpx; |
|
||||||
padding-left: 26rpx; |
|
||||||
image { |
|
||||||
width: 100%; |
|
||||||
height: 100%; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.banner-box { |
|
||||||
padding: 20rpx 32rpx; |
|
||||||
.swiper-wrapper { |
|
||||||
width: 686rpx; |
|
||||||
height: 398rpx; |
|
||||||
border-radius: 16rpx; |
|
||||||
.image { |
|
||||||
width: 686rpx; |
|
||||||
height: 398rpx; |
|
||||||
border-radius: 16rpx; |
|
||||||
background-color: #FFFFFF; |
|
||||||
} |
|
||||||
} |
|
||||||
.dots-box { |
|
||||||
padding-top: 26rpx; |
|
||||||
.dot { |
|
||||||
width: 92rpx; |
|
||||||
height: 4rpx; |
|
||||||
background: #CCEDEB; |
|
||||||
margin: 0rpx 6rpx; |
|
||||||
position: relative; |
|
||||||
.active { |
|
||||||
width: 0rpx; |
|
||||||
height: 4rpx; |
|
||||||
background: #2DB5AE; |
|
||||||
position: absolute; |
|
||||||
top: 0; |
|
||||||
left: 0; |
|
||||||
transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-webkit-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-moz-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-o-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
} |
|
||||||
.active2 { |
|
||||||
width: 0rpx; |
|
||||||
height: 4rpx; |
|
||||||
background: #2DB5AE; |
|
||||||
position: absolute; |
|
||||||
top: 0; |
|
||||||
left: 92rpx; |
|
||||||
transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-webkit-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-moz-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-o-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
} |
|
||||||
.active.on { |
|
||||||
width: 92rpx; |
|
||||||
transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-webkit-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-moz-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-o-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
} |
|
||||||
.active.on2 { |
|
||||||
width: 92rpx; |
|
||||||
left: 0; |
|
||||||
transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-webkit-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-moz-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
-o-transition: all .6s cubic-bezier(.18,.89,.17,.88); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.integral-box { |
|
||||||
padding: 6rpx 32rpx 12rpx; |
|
||||||
.title { |
|
||||||
font-size: 26rpx; |
|
||||||
font-family: PingFangTC; |
|
||||||
font-weight: 600; |
|
||||||
color: #F5F6F8; |
|
||||||
line-height: 34rpx; |
|
||||||
padding-bottom: 8rpx; |
|
||||||
} |
|
||||||
.integral { |
|
||||||
width: 480rpx; |
|
||||||
height: 130rpx; |
|
||||||
background: linear-gradient(135deg, #39D396 0%, #2DB7AD 43%, #1B8DCC 100%); |
|
||||||
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); |
|
||||||
border-radius: 16rpx; |
|
||||||
padding: 18rpx; |
|
||||||
position: relative; |
|
||||||
.item { |
|
||||||
position: relative; |
|
||||||
margin-right: 6rpx; |
|
||||||
.top { |
|
||||||
width: 40rpx; |
|
||||||
height: 26rpx; |
|
||||||
background: #3A3A3C; |
|
||||||
border-radius: 8rpx 8rpx 0rpx 0rpx; |
|
||||||
margin-bottom: 4rpx; |
|
||||||
} |
|
||||||
.bottom { |
|
||||||
width: 40rpx; |
|
||||||
height: 26rpx; |
|
||||||
background: #3A3A3C; |
|
||||||
border-radius: 0rpx 0rpx 8rpx 8rpx; |
|
||||||
} |
|
||||||
.num { |
|
||||||
width: 40rpx; |
|
||||||
height: 56rpx; |
|
||||||
font-size: 40rpx; |
|
||||||
font-family: Futura; |
|
||||||
font-weight: 600; |
|
||||||
color: #F5F6F8; |
|
||||||
line-height: 56rpx; |
|
||||||
text-align: center; |
|
||||||
position: absolute; |
|
||||||
top: 0; |
|
||||||
left: 0; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.btn { |
|
||||||
position: absolute; |
|
||||||
bottom: 18rpx; |
|
||||||
right: 18rpx; |
|
||||||
width: 70rpx; |
|
||||||
height: 26rpx; |
|
||||||
padding: 0rpx 8rpx; |
|
||||||
background: #FFFFFF; |
|
||||||
border-radius: 16rpx; |
|
||||||
font-size: 16rpx; |
|
||||||
font-family: PingFangTC; |
|
||||||
font-weight: 600; |
|
||||||
color: #2DB5AE; |
|
||||||
line-height: 26rpx; |
|
||||||
image { |
|
||||||
width: 20rpx; |
|
||||||
height: 20rpx; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.integral-box .get-way { |
|
||||||
width: 184rpx; |
|
||||||
height: 130rpx; |
|
||||||
background: linear-gradient(135deg, #39D396 0%, #2DB7AD 43%, #1B8DCC 100%); |
|
||||||
box-shadow: 0rpx 10rpx 16rpx 0rpx rgba(0,0,0,0.15); |
|
||||||
border-radius: 16rpx; |
|
||||||
.btn2 { |
|
||||||
width: 70rpx; |
|
||||||
height: 26rpx; |
|
||||||
background: #FFFFFF; |
|
||||||
border-radius: 16rpx; |
|
||||||
font-size: 16rpx; |
|
||||||
font-family: PingFangTC; |
|
||||||
font-weight: 600; |
|
||||||
color: #2DB5AE; |
|
||||||
line-height: 26rpx; |
|
||||||
text-align: center; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
.list-box { |
|
||||||
.title { |
|
||||||
font-size: 30rpx; |
|
||||||
font-family: SourceHanSansSCVF; |
|
||||||
font-weight: 600; |
|
||||||
color: #3A3A3C; |
|
||||||
line-height: 46rpx; |
|
||||||
padding: 20rpx 32rpx; |
|
||||||
} |
|
||||||
} |
|
||||||
</style> |
|
After Width: | Height: | Size: 448 B |
After Width: | Height: | Size: 457 B |
Loading…
Reference in new issue