详情页优化以及我的页面优化

version/0412
shuxiaoquan 1 year ago
parent 1ac03dbd38
commit b810a98b1e
  1. 545
      pages/goods/detail.vue
  2. 4
      pages/goods/list.vue
  3. 11
      pages/index/index.vue
  4. 9
      pages/login/components/mp-weixin-mobile.vue
  5. 8
      pages/login/index.vue
  6. 2
      pages/search/index.vue
  7. 21
      pages/user/index.vue
  8. BIN
      static/detail/buy.png
  9. BIN
      static/detail/copy.png
  10. BIN
      static/detail/home.png
  11. BIN
      static/detail/jiangjia.png
  12. BIN
      static/detail/miaosha.png
  13. BIN
      static/detail/rightIcon.png
  14. BIN
      static/detail/tip.png
  15. BIN
      static/detail/ys.png

@ -1,26 +1,27 @@
<template>
<view class="detail">
<u-navbar>
<view class="slot-wrap">
<input type="text" @click="toSearch()" disabled placeholder="iPhone15" class="searInput" />
<image style="width: 50rpx; height: 50rpx;" @click="goHome()" :src="$picUrl+'/static/detail/home.png'"></image>
<view class="search">
<input type="text" @click="toSearch()" disabled placeholder="iPhone15" class="searInput" />
</view>
</view>
</u-navbar>
<view class="head">
<view class="share">
<view class="share" @click="shareImg()">
<view class="sp"></view>
<image :src="$picUrl+'/static/detail/share.png'" class="shareIcon" @click="shareImg"></image>
<button open-type="share"></button>
<image src="/static/detail/share.png" mode="" class="shareIcon" @click="shareImg"></image>
</view>
<view class="swiper">
<swiper class="swiper" circular :indicator-dots="indicatorDots" :autoplay="autoplay"
:interval="interval" :duration="duration">
<swiper-item v-for="(item,index) in goods.goods_images" :key="index">
<image :src="item.preview_url" mode="" class="goodsImg"></image>
<swiper class="swiper" :circular="true" autoplay @change="changeSwiper">
<swiper-item v-for="(item,index) in goods.goods_images1" :key="index" @click="previewImage(index)">
<image :src="item" class="goodsImg"></image>
</swiper-item>
</swiper>
<view class="dots" v-if="goods.goods_images && goods.goods_images.length> 0">{{(currenIndex+1)+"/"+goods.goods_images.length}}</view>
</view>
</view>
@ -31,7 +32,7 @@
<text></text>{{goods.goods_price_min}}
</view>
<view class="sellPrice" v-if="goods.goods_price_min_dealer">
<text class="sellLeft">分销价</text>{{goods.goods_price_min_dealer}}
<text class="sellLeft">分销价</text>{{goods.goods_price_min_dealer?goods.goods_price_min_dealer:0}}
</view>
</view>
<view class="right">
@ -39,12 +40,11 @@
{{goods.line_price_min}}
</view>
<view class="rightInfo">
降价通知
<image :src="$picUrl+'/static/detail/jiangjia.png'"></image>
</view>
</view>
</view>
<!-- v-if="userInfo.user_type==10" -->
<view class="pro">
<view class="pro" v-if="isLogin || userInfo.user_type==10">
<view class="proMem">
<text v-if="userInfo.user_type==10">Plus</text>
<text v-if="userInfo.user_type==20">分销</text>
@ -52,9 +52,9 @@
</view>
<view class="proInfo">
开通<text v-if="userInfo.user_type==10">Plus</text>
<text v-if="userInfo.user_type==20">分销</text>会员预计再省
<text v-if="userInfo.user_type==20">分销</text>会员预计再省<text style="color: #FF1D1D;">30</text>
</view>
<view class="proBtn" @click="goMember">
<view class="proBtn" @click="goMember()">
立即开通
</view>
</view>
@ -63,36 +63,50 @@
{{goods.goods_name}}
</view>
<view class="goodsOpera">
<view class="goodsNum" @click="copyNum" v-if="goods.skuList.length>0">
<view class="goodsNum" @click="copyNum(goods.skuList[0].goods_sku_id)" v-if="goods.specList && goods.specList.length>0">
<text>{{goods.skuList[0].goods_sku_id}}</text>
<image src="/static/detail/copy.png" mode=""></image>
<image :src="$picUrl+'/static/detail/copy.png'"></image>
</view>
<view class="goodsNum" @click="copyNum(goods.goods_id)" v-else>
<text>{{goods.goods_id}}</text>
<image :src="$picUrl+'/static/detail/copy.png'"></image>
</view>
<view class="operaImg">
<image src="/static/detail/tip.png" mode="" class="tips"></image>
<image src="/static/detail/ys.png" mode="" class="ys"></image>
<image :src="$picUrl+'/static/detail/jiangjia.png'" class="tips"></image>
<image :src="$picUrl+'/static/detail/tip.png'" class="tips"></image>
<image :src="$picUrl+'/static/detail/ys.png'" class="tips"></image>
</view>
</view>
<view class="rank" @click="goRanking" v-if="goods.paihang>0">
<view class="rank" @click="goRanking()" v-if="goods && goods.category">
<text>排行榜 {{goods.category.name}}热搜榜第{{goods.paihang}}</text>
<image src="/static/detail/rightIcon.png" mode=""></image>
<image :src="$picUrl+'/static/detail/rightIcon.png'"></image>
</view>
</view>
</view>
<view class="orderInfo">
<!-- -->
<view class="chosed" @click="choseSku" v-if="goods.spec_type == 20">
<view class="chosed" v-if="goods.spec_type == 20">
<view class="title">已选</view>
<view class="info" v-if="goods.skuList.length>0">
<text v-for="(a,idx) in goods.skuList[0].goods_props" :key="idx" style="margin-right: 10rpx;">{{a.group.name}}{{a.value.name}}</text>1件
</view>
</view>
<view class="chosed" v-else>
<view class="title">已选</view>
<view class="info" v-for="(item, index) in goods.specList" :key="index">{{ item.spec_name }}</view>
<view class="info">1</view>
</view>
<view class="chosed">
<view class="title">送至</view>
<view class="info">
<view class="infoLeft">
现货
<image src="../../static/detail/rightIcon.png" mode=""></image>
<image :src="$picUrl+'/static/detail/rightIcon.png'"></image>
</view>
<view class="address">
{{addressInfo.region?addressInfo.region.province +'-'+addressInfo.region.city+'-'+addressInfo.region.region:''}}
<view class="box" @click="choseAddress()" >
<view class="address">
{{addressInfo.region?addressInfo.region.province +'-'+addressInfo.region.city+'-'+addressInfo.region.region:'全国'}}
</view>
<u-icon name="arrow-right" color="#7C7C7C"></u-icon>
</view>
</view>
</view>
@ -101,20 +115,33 @@
<view class="serveInfo">
服务
</view>
<view class="span">
</view>
</view>
<view class="business">
<view class="busSour">
<text>商家来源平台认证商户</text>
<view class="box" @click="toFuwu()">
<view class="business">
<view class="busSour">
<text>商家来源平台认证商户</text>
</view>
<view class="busSour">
<text>商家名称{{cityInfo.shop_name}}</text>
</view>
</view>
<u-icon name="arrow-right" style="float: right;" color="#7C7C7C"></u-icon>
</view>
</view>
<view class="chosed" v-if="serveList.length>0">
<view class="title">服务</view>
<!-- <image src="/static/detail/buy.png" mode="" class="buy"></image> -->
<view class="info" v-for="(item,index) in serveList" :key="index">{{item.name}}</view>
<view class="info">
<image :src="$picUrl+'/static/detail/buy.png'" class="buy"></image>
<text class="li" v-for="(item,index) in serveList" :key="index" style="margin-right: 5rpx;">{{item.name}}</text>
</view>
</view>
<view class="chosed" v-else>
<view class="title">服务</view>
<view class="info">
<image :src="$picUrl+'/static/detail/buy.png'" class="buy"></image>
<text class="li" style="margin-right: 5rpx;">正品保障</text>
<text class="li" style="margin-right: 5rpx;">全程跟踪</text>
</view>
</view>
</view>
<view class="about">
@ -135,7 +162,7 @@
{{item.goods_name}}
</view>
<view class="price">
{{item.goods_price_min}}
<text>{{item.goods_price_min}}</text>
</view>
</view>
</view>
@ -143,16 +170,24 @@
<view class="detail-content" v-html="goods.content"></view>
<view class="footer">
<view class="fooLeft">
<view class="footerCus firstBtn">
<view class="footerCus firstBtn" v-if="isLogin == false" @click="addCar()">
<view class="cusIcon">
<image src="/static/detail/customer.png" mode=""></image>
<image src="/static/detail/customer.png"></image>
</view>
<view class="customer">
客服
</view>
</view>
<view class="footerCus firstBtn" v-else>
<view class="cusIcon">
<image src="/static/detail/customer.png"></image>
</view>
<view class="customer">
客服
</view>
<button open-type="contact"></button>
</view>
<view class="footerCus " @click="shoppingCart">
<view class="footerCus " @click="shoppingCart()">
<view class="cusIcon">
<image src="/static/detail/car.png" mode=""></image>
</view>
@ -163,7 +198,7 @@
</view>
<view class="fooRight">
<view class="addCar" v-if="!isPre" @click="addCar">
<view class="addCar" v-if="!isPre" @click="addCar()">
加入购物车
</view>
<view class="buyNow" v-if="!isPre" @click="buyNow">
@ -273,6 +308,9 @@
</view>
</view>
</view>
<view class="toTop" v-if="isTop" @click="openScrollTo()">
<image :src="$picUrl+'/static/toTop.png'"></image>
</view>
<SkuPopup v-if="!isLoading" v-model="showSkuPopup" :skuMode="skuMode" :goods="goods" @addCart="onAddCart" />
</view>
</template>
@ -287,6 +325,9 @@
},
data() {
return {
cityInfo: {},
currenIndex: 0,
isTop: false,
skuMode: 1,
goodShow:false,
showSkuPopup: false,
@ -307,7 +348,7 @@
addressList: [],
addressInfo: {},
serveList:[],
token:'',
isLogin: false,
}
},
onLoad(options) {
@ -315,49 +356,44 @@
this.isPre = options.isPre?options.isPre:null
this.goodsId = options.goodsId?options.goodsId:null
this.pre_id = options.pre_id?options.pre_id:null;
// this.goodsId=options.goodsId;
this.getSuggestGoods()
this.getServeList()
this.getGoodsDetail()
this.cityInfo = uni.getStorageSync("cityInfo");
},
onShow() {
if(uni.getStorageSync('AccessToken')){
this.getAddressList()
this.getSuggestGoods()
this.getServeList()
this.isLogin = true;
this.userInfo = uni.getStorageSync('userInfo');
}else{
this.isLogin = false;
this.userInfo = {}
}
this.getGoodsDetail()
},
onPageScroll(e) {
if (e.scrollTop <= 200 ) { // true
this.isTop = false
} else {
this.isTop = true
}
},
methods: {
copyText(val){
//
let text = val;
uni.setClipboardData({
data: text,
success(res) {
console.log('成功复制到剪贴板');
},
fail(err) {
console.error('复制失败', err);
}
});
//
previewImage(i){
uni.previewImage({
current: this.goods.goods_images1[i],
urls: this.goods.goods_images1
})
},
shareWechat(){
uni.share({
provider: "weixin",
scene: "WXSceneSession",
type: 2,
imageUrl: this.goods.goods_image,
success: function (res) {
console.log("success:" + JSON.stringify(res));
},
fail: function (err) {
console.log("fail:" + JSON.stringify(err));
}
});
//
changeSwiper(e){
this.currenIndex = e.detail.current
},
openScrollTo(){
uni.pageScrollTo({
scrollTop: 0
})
},
shareImg(){
this.openDialog =true
@ -379,15 +415,15 @@
getServeList(){
const that = this
let params = {
goodsId:that.goodsId
goodsId: that.goodsId
}
return new Promise((resolve, reject) => {
GoodsApi.serveList(params).then(res => {
if (res.status == 200) {
that.serveList = res.data.list
}
})
.catch()
if (res.status == 200) {
that.serveList = res.data.list
}
})
.catch()
})
},
//
@ -415,15 +451,20 @@
const that = this
return new Promise((resolve, reject) => {
address.list().then(res => {
if (res.status == 200) {
that.addressList = res.data.list
console.log('58555559999',that.addressList)
if (res.status == 200) {
that.addressList = res.data.list
if(res.data.list && res.data.list.length > 0){
console.log(1111)
that.getDefaultAddress()
}else{
console.log(222)
}
})
.catch()
}
})
.catch()
})
},
//
getDefaultAddress() {
console.log('5855555')
const that = this
@ -433,7 +474,6 @@
for (var i = 0; i < that.addressList.length; i++) {
if (res.data.defaultId == that.addressList[i].address_id) {
that.addressInfo = that.addressList[i];
console.log(that.addressInfo,'获取地址')
}
}
@ -442,6 +482,24 @@
.catch()
})
},
//
choseAddress() {
if(!uni.getStorageSync("AccessToken")) {
uni.navigateTo({
url: "/pages/login/index"
})
return ;
}
if(this.addressList && this.addressList.length > 0){
uni.navigateTo({
url: '/pages/address/index'
})
}else{
uni.navigateTo({
url: '/pages/address/create'
})
}
},
toSearch() {
uni.navigateTo({
url: "/pages/search/index"
@ -450,6 +508,22 @@
choseSku() {
this.showSkuPopup = true
},
copyNum(msg) {
uni.setClipboardData({
data: msg,
success: function () {
uni.getClipboardData({
success: function (res) {
console.log(res.data);
uni.showToast({
icon: "none",
title: "复制成功"
})
}
});
}
});
},
//
getGoodsDetail() {
const that = this
@ -457,6 +531,16 @@
GoodsApi.detail(this.goodsId)
.then(result => {
let info = result.data.detail;
info.goods_images1 = []
if(info.goods_images && info.goods_images.length > 0){
info.goods_images.map(a=>{
info.goods_images1.push(a.preview_url)
})
}
if(info.skuList && info.skuList.length > 0){
info.skuList = info.skuList.reverse();
}
info.content = info.content
.replace(/style=""/g,'')
.replace(/<img src=/g,'<img style="width: 100%; display:block" src=')
@ -465,7 +549,7 @@
this.$set(this.goods,item,info[item])
// that.goods[item] = info[item]
})
console.log(that.goods)
that.allPicture = info.goods_images.length
})
.catch()
@ -477,7 +561,16 @@
GoodsApi.recommended()
.then(result => {
console.log(result, '获取推荐商品列表')
that.suggestGoodsList = result.data.goodsList
let arr = result.data.goodsList
if(arr && arr.length > 0){
arr.map(a=>{
a.goods_price_min = Number(a.goods_price_min)
a.goods_price_max = Number(a.goods_price_max)
a.line_price_min = Number(a.line_price_min)
a.line_price_max = Number(a.line_price_max)
})
}
that.suggestGoodsList = arr
})
.catch()
},
@ -486,10 +579,15 @@
url: '/pages/index/index'
})
},
toDetail(goods_id) {
uni.navigateTo({
url: '/pages/goods/detail?goodsId=' + goods_id
})
},
goRanking() {
//
uni.navigateTo({
url: '/pages/activity/charts'
url: '/pages/activity/ranking'
})
},
goMember() {
@ -503,6 +601,11 @@
url: '/pages/member/index'
})
},
toFuwu() {
uni.navigateTo({
url: "/pages/news/consult/about"
})
},
shoppingCart() {
//
uni.switchTab({
@ -560,7 +663,25 @@
.detail {
width: 100%;
height: 100%;
padding-bottom: 150rpx;
.toTop{
position: fixed;
bottom: 230rpx;
right: 32rpx;
width: 47px;
height: 47px;
background: #FFFFFF;
border-radius: 50%;
z-index:999;
display: flex;
align-items: center;
justify-content: center;
image{
width: 25px;
height: 25px;
}
}
&-content{
padding: 30rpx;
font-size: 26rpx;
@ -573,14 +694,21 @@
}
}
.slot-wrap {
width: 400rpx;
margin-left: 60rpx;
height: 58rpx;
border-radius: 60rpx 60rpx 60rpx 60rpx;
background-color: #F3F3F3;
width: 100%;
display: flex;
align-items: center;
padding-left: 20rpx;
justify-content: space-between;
.search{
width: 400rpx;
height: 58rpx;
border-radius: 60rpx;
background-color: #F3F3F3;
display: flex;
align-items: center;
padding-left: 20rpx;
box-sizing: border-box;
margin: 0 20rpx;
}
}
@ -615,130 +743,89 @@
}
}
}
.head{
width: 100%;
height: 750rpx;
position: relative;
}
.share {
z-index: 22;
top: 128rpx;
width: 54rpx;
height: 54rpx;
z-index: 10;
top: 28rpx;
width: 74rpx;
height: 74rpx;
position: absolute;
right: 30rpx;
background-color: rgba(255, 255, 255, 1);
border-radius: 50%;
text-align: center;
right: 28rpx;
.sp {
width: 54rpx;
height: 54rpx;
display: none;
}
button{
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
z-index: 2;
opacity: 0;
}
.shareIcon {
width: 54rpx;
height: 54rpx;
margin-right: 28rpx;
margin-top: 10rpx;
}
}
.swiper {
width: 726rpx;
height: 458rpx;
border-radius: 0rpx 0rpx 0rpx 0rpx;
width: 100%;
height: 750rpx;
opacity: 1;
left: 0;
right: 0;
margin: auto;
.goodsImg {
margin-left: 30rpx;
// width: 666rpx;
// height: 398rpx;
}
.goods {
width: 100%;
height: 100%;
white-space: nowrap;
.goodsItem {
width: 100%;
height: 100%;
display: inline-block;
position: relative;
.goodsImg {
margin-left: 30rpx;
width: 666rpx;
height: 398rpx;
}
.num {
text-align: center;
display: flex;
justify-content: space-between;
.numSp {
width: 82rpx;
height: 56rpx;
}
.numInfo {
width: 82rpx;
height: 56rpx;
background: #262626;
border-radius: 50% 0 0 50%;
font-size: 28rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 56rpx;
}
}
}
}
.dots{
width: 82rpx;
line-height: 56rpx;
background: rgba(38,38,38,0.85);
position: absolute;
bottom: 20rpx;
right: 0;
z-index: 22;
font-size: 28rpx;
font-weight: 400;
color: #FFFFFF;
text-align: center;
border-radius: 56rpx 0 0 56rpx;
}
}
.goodsInfo {
width: 720rpx;
max-height: 484rpx;
background: #FFFFFF;
border-radius: 6rpx 6rpx 6rpx 6rpx;
opacity: 1;
margin: 30rpx 0 0 16rpx;
border-radius: 6rpx;
padding-bottom: 30rpx;
overflow: hidden;
margin: 20rpx auto 16rpx;
.goodsPrice {
background-image: url('/static/detail/priceback.png');
background-image: url('https://www.royaum.com.cn/static/detail/priceback.png');
width: 720rpx;
height: 136rpx;
background-size: 100% 100%;
background-size: cover;
display: flex;
align-items: center;
justify-content: space-between;
.left {
margin: 18rpx 0 0 28rpx;
margin: 0 0 0 28rpx;
.leftPrice {
width: 140rpx;
height: 64rpx;
font-size: 46rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 64rpx;
text {
width: 20rpx;
height: 64rpx;
font-size: 32rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 64rpx;
@ -749,7 +836,6 @@
.sellPrice {
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 34rpx;
@ -763,12 +849,10 @@
.right {
margin-right: 50rpx;
.rightPrice {
width: 102rpx;
text-align: center;
height: 48rpx;
font-size: 34rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FFFFFF;
line-height: 48rpx;
@ -776,19 +860,18 @@
}
.rightInfo {
width: 136rpx;
height: 44rpx;
font-size: 34rpx;
font-family: YouSheBiaoTiHei;
font-weight: 400;
color: #FFFFFF;
line-height: 34rpx;
width: 125rpx;
height: 26rpx;
image{
width: 100%;
height: 100%;
}
}
}
}
.pro {
background-image: url('/static/detail/pro.png');
background-image: url('https://www.royaum.com.cn/static/detail/pro.png');
background-size: 100% 100%;
width: 690rpx;
height: 82rpx;
@ -798,12 +881,9 @@
.proMem {
width: 142rpx;
height: 40rpx;
font-size: 28rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 500;
color: #966542;
line-height: 33rpx;
margin-left: 18rpx;
padding-right: 24rpx;
border-right: 2rpx solid #EFD4B4;
@ -811,12 +891,9 @@
.proInfo {
width: 304rpx;
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 500;
color: #966542;
line-height: 34rpx;
margin: 0 38rpx 0 26rpx;
}
@ -824,12 +901,11 @@
width: 126rpx;
height: 50rpx;
background: #9F744D;
border-radius: 82rpx 82rpx 82rpx 82rpx;
border-radius: 82rpx;
opacity: 1;
text-align: center;
line-height: 50rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 500;
color: #FFFFFF;
}
@ -840,72 +916,67 @@
.goodsName {
width: 672rpx;
font-size: 28rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #000000;
line-height: 50rpx;
margin: 28rpx 0 0 28rpx;
margin: 28rpx auto 0;
}
.goodsOpera {
margin-left: 28rpx;
display: flex;
justify-content: space-between;
align-items: center;
.goodsNum {
text {
display: inline-block;
width: 168rpx;
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #8A8A8A;
line-height: 34rpx;
margin-right: 4rpx;
}
image {
width: 28rpx;
height: 28rpx;
vertical-align: middle;
margin-left: 10rpx;
}
}
.operaImg {
margin-right: 34rpx;
image {
width: 49rpx;
height: 49rpx;
}
.tips {
margin-right: 6rpx;
margin-left: 10rpx;
}
}
}
.rank {
margin: 22rpx 0 18rpx 28rpx;
width: 670rpx;
height: 58rpx;
background: #FFF3EE;
border-radius: 8rpx 8rpx 8rpx 8rpx;
opacity: 1;
border-radius: 8rpx;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 28rpx;
box-sizing: border-box;
margin: 16rpx auto 0;
text {
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FF1130;
line-height: 58rpx;
}
image {
width: 14rpx;
width: 8rpx;
height: 14rpx;
}
}
@ -914,55 +985,46 @@
.orderInfo {
width: 720rpx;
height: 256rpx;
background: #FFFFFF;
border-radius: 6rpx 6rpx 6rpx 6rpx;
border-radius: 6rpx;
opacity: 1;
margin: 16rpx 0 0 20rpx;
padding: 24rpx 22rpx 12rpx 32rpx;
margin: 16rpx auto 20rpx;
padding: 25rpx 25rpx 10rpx;
box-sizing: border-box;
.chosed {
margin-bottom: 18rpx;
display: flex;
align-items: center;
.buy {
width: 112rpx;
height: 22rpx;
margin-right: 10rpx;
}
align-items: flex-start;
padding-bottom: 18rpx;
overflow: hidden;
.title {
width: 48rpx;
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #C4C4C4;
line-height: 34rpx;
margin-right: 38rpx;
}
.info {
height: 34rpx;
flex: 1;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #3D3D3D;
line-height: 34rpx;
display: flex;
align-items: center;
.buy {
width: 114rpx;
height: 23rpx;
margin-right: 10rpx;
display: block;
}
.infoLeft {
height: 34rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #FE3636;
line-height: 34rpx;
image {
width: 14rpx;
width: 8rpx;
height: 14rpx;
margin: 0 10rpx 0 8rpx;
}
@ -990,21 +1052,23 @@
line-height: 34rpx;
margin-right: 38rpx;
}
.span {
width: 48rpx;
height: 34rpx;
}
}
.box{
display: flex;
align-items: flex-start;
justify-content: space-between;
flex: 1;
}
.business {
.busSour {
height: 34rpx;
height: 40rpx;
font-size: 24rpx;
font-family: PingFang SC, PingFang SC;
font-weight: 400;
color: #3D3D3D;
line-height: 34rpx;
}
.busName {
@ -1094,19 +1158,18 @@
text-overflow: ellipsis;
white-space: normal !important;
word-wrap: break-word;
-webkit-box-orient: vertical;
-webkit-box-align: start;
-webkit-box-pack: center;
}
.price {
width: 66rpx;
height: 44rpx;
font-size: 32rpx;
font-family: PingFang SC, PingFang SC;
font-size: 24rpx;
font-weight: 500;
color: #ED2B00;
line-height: 38rpx;
text{
font-size: 32rpx;
}
}
}
}

@ -187,6 +187,7 @@
* 生命周期函数--监听页面加载
*/
onLoad(options) {
console.log(options)
// options
this.options = options
this.searchText = options.search
@ -545,9 +546,8 @@
.shipping {
width: 44rpx;
height: 24rpx;
background: #FFFFFF;
border-radius: 4rpx 4rpx 4rpx 4rpx;
border-radius: 4rpx;
opacity: 1;
border: 1rpx solid #F21A1C;
font-size: 16rpx;

@ -20,7 +20,7 @@
<template v-if="current == 0">
<view class="chat" v-if="isLogin == false" @click="toChat()">
<u-icon name="chat" color="#000000" size="70"></u-icon>
<view class="badge"></view>
<!-- <view class="badge"></view> -->
</view>
<view class="chat" v-else>
<u-icon name="chat" color="#000000" size="70"></u-icon>
@ -902,6 +902,15 @@
}
.chat{
position: relative;
button{
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
z-index: 2;
opacity: 0;
}
.badge{
position: absolute;
width:40rpx;

@ -18,8 +18,12 @@
} from '@/utils/util'
import * as UserApi from '@/api/user'
export default {
props: {
// id
share_user_id: {
type: String
},
},
data() {
return {
// (code)
@ -61,6 +65,7 @@
code: app.code,
encryptedData: detail.encryptedData,
iv: detail.iv,
share_user_id: this.share_user_id,
isParty: app.isParty,
partyData: app.userInfo,
refereeId: store.getters.refereeId

@ -20,7 +20,7 @@
</view>
<view class="login-fd login-fd-on" @click="login">登录</view>
<view class="">
<mpWeiXinMobile></mpWeiXinMobile>
<mpWeiXinMobile :share_user_id="share_user_id"></mpWeiXinMobile>
</view>
</view>
</template>
@ -50,10 +50,11 @@
countdown: 60,
countDownFun: null,
code: '',
share_user_id: ""
}
},
onShow() {
onLoad(o) {
this.share_user_id = o.share_user_id
},
methods: {
@ -117,6 +118,7 @@
store.dispatch('Login', {
smsCode: that.semCode,
mobile: that.phoneNum,
share_user_id: this.share_user_id,
isParty: false,
partyData: {},
refereeId: false

@ -118,7 +118,7 @@
// this.searchList = Array.from(new Set(this.searchList));
// uni.setStorageSync('searchList', this.searchList)
uni.navigateTo({
url: '/pages/goods/list?search=' + item
url: '/pages/goods/list?search=' + item.word
})
},
getSearchInfo() {

@ -127,12 +127,12 @@
</view>
<view class="coupon" v-if="isLogin == false || userInfo.user_type != 40">
<view class="walletList">
<view class="listItem" @click="goPage('pages/cart/index')">
<view class="listItem" @click="goJump('pages/news/park/recordHistory')">
<view class="num">
{{actionCountsInfo.cart_number?actionCountsInfo.cart_number:0}}
{{actionCountsInfo.reservation_number?actionCountsInfo.reservation_number:0}}
</view>
<view class="info">
购物车
预约记录
</view>
</view>
<view class="listItem" @click="goJump('pages/news/park/browsingHistory')">
@ -143,12 +143,12 @@
浏览记录
</view>
</view>
<view class="listItem" @click="goJump('pages/news/park/recordHistory')">
<view class="listItem" @click="goJump('/pages/news3/setOutRecords')">
<view class="num">
{{actionCountsInfo.reservation_number?actionCountsInfo.reservation_number:0}}
{{actionCountsInfo.take_goods_number?actionCountsInfo.take_goods_number:0}}
</view>
<view class="info">
预约记录
{{isLogin==false || userInfo.user_type <= 20?'发货记录':'提货记录'}}
</view>
</view>
<view class="listItem" @click="goJump('pages/news/coupon/list')">
@ -235,7 +235,7 @@
</view>
</view>
</view>
<view class="goodsManage" v-if="isLogin == false || userInfo.user_type == 30">
<view class="goodsManage" v-if="userInfo.user_type == 30">
<view class="manageTitle">
<text lines="1" class="text_5 titleLeft">分销订单</text>
<text lines="1" class="text_6 titleRight" @click="goJump('/pages/news3/fenxiao')">查看全部</text>
@ -441,10 +441,10 @@
</view>
</view>
<!-- 商品推荐 -->
<view class="goodsRecommend-title">
<image :src="$picUrl+'/static/user/left.png'"></image>为您推荐<image :src="$picUrl+'/static/user/right.png'"></image>
<view class="goodsRecommend-title" v-if="isLogin == false || userInfo.user_type != 40">
<image :src="$picUrl+'/static/user/left.png'"></image>专属推荐<image :src="$picUrl+'/static/user/right.png'"></image>
</view>
<view class="goodsRecommend">
<view class="goodsRecommend" v-if="isLogin == false || userInfo.user_type != 40">
<view class="goodsItem" v-for="(item,index) in suggestGoodsList" @click="goodsDetail(item)" :key="index">
<view class="pic">
<image :src="item.goods_image" mode=""></image>
@ -726,6 +726,7 @@
display: flex;
flex-direction: column;
justify-content: flex-end;
padding-bottom: 30rpx;
.toTop{
position: fixed;
bottom:30rpx;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 329 B

After

Width:  |  Height:  |  Size: 520 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 B

After

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 786 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Loading…
Cancel
Save