535 lines
17 KiB
Vue
535 lines
17 KiB
Vue
|
|
<template>
|
|||
|
|
<view :data-theme="theme">
|
|||
|
|
<!-- 首页组合组件 -->
|
|||
|
|
<homeComb :bgInfo="bgInfo" v-if="showHomeComb && !merId" :dataConfig="homeCombData" @changeTab="changeTab"
|
|||
|
|
:isScrolled="isScrolled" :navIndex="navIndex" :isSmallPage="isSmallPage"></homeComb>
|
|||
|
|
<!-- 店铺组合组件 -->
|
|||
|
|
<merHomeComb :isSmallPage="isSmallPage" :bgInfo="bgInfo" v-if="showHomeComb && merId" :dataConfig="homeCombData"
|
|||
|
|
:isScrolled="isScrolled" :navIndex="navIndex" :merId="merId">
|
|||
|
|
</merHomeComb>
|
|||
|
|
<!-- 顶部搜索框 -->
|
|||
|
|
<headerSearch :isScrolled="isScrolled" :merId="merId" :isSmallPage="isSmallPage" v-if="showHeaderSerch" :dataConfig="headerSerchCombData">
|
|||
|
|
</headerSearch>
|
|||
|
|
<!-- 分类 -->
|
|||
|
|
<cateNav v-if="showCateNav" :dataConfig="cateNavData" @changeTab="changeTab"></cateNav>
|
|||
|
|
<view class="page_content skeleton">
|
|||
|
|
<view v-if="navIndex === 0">
|
|||
|
|
<view v-for="(item, index) in styleConfig" :key="index">
|
|||
|
|
<merHome v-if="item.name == 'homeStore'&&!item.isHide" :dataConfig="item" class="tui-skeleton-rect"
|
|||
|
|
:merchantInfo="merchantAPPInfo" :merId="merId" :isHome="true"></merHome>
|
|||
|
|
<!-- 新闻简报 -->
|
|||
|
|
<news v-if="item.name == 'news'&&!item.isHide" :dataConfig="item"></news>
|
|||
|
|
<!-- 导航组 -->
|
|||
|
|
<menus v-if="item.name == 'menus'&&!item.isHide" :dataConfig="item" :merId="merId"></menus>
|
|||
|
|
<!-- 文章列表 -->
|
|||
|
|
<articleList v-if="item.name == 'homeArticle'&&!item.isHide" :dataConfig="item">
|
|||
|
|
</articleList>
|
|||
|
|
<!-- 秒杀 -->
|
|||
|
|
<seckill-data v-if="item.name == 'seckill'&&!item.isHide" :dataConfig="item" :merId="merId"></seckill-data>
|
|||
|
|
<!-- 小程序直播 -->
|
|||
|
|
<!-- #ifdef MP -->
|
|||
|
|
<liveBroadcast v-if="item.name == 'liveBroadcast'&&!item.isHide" :dataConfig="item">
|
|||
|
|
</liveBroadcast>
|
|||
|
|
<!-- #endif -->
|
|||
|
|
<!-- 优惠券 -->
|
|||
|
|
<coupon v-if="item.name == 'homeCoupon'&&!item.isHide" :dataConfig="item" :merId="merId"></coupon>
|
|||
|
|
<!-- 图片魔方 -->
|
|||
|
|
<pictureCube v-if="item.name == 'pictureCube'&&!item.isHide" :dataConfig="item" :merId="merId">
|
|||
|
|
</pictureCube>
|
|||
|
|
<!-- 热区 -->
|
|||
|
|
<hotSpot v-if="item.name == 'homeHotspot'&&!item.isHide" :dataConfig="item" :merId="merId"></hotSpot>
|
|||
|
|
<!-- 轮播图 -->
|
|||
|
|
<swiperBg v-if="item.name == 'swiperBg'&&!item.isHide" :dataConfig="item" :merId="merId"></swiperBg>
|
|||
|
|
<!-- 视频 -->
|
|||
|
|
<shortVideo v-if="item.name == 'video'&&!item.isHide" :dataConfig="item"></shortVideo>
|
|||
|
|
<!-- 店铺街 -->
|
|||
|
|
<merchant-list v-if="item.name == 'homeMerchant'&&!item.isHide"
|
|||
|
|
:dataConfig="item" :regionIds="regionIds"></merchant-list>
|
|||
|
|
<!-- 拼团 -->
|
|||
|
|
<group v-if="item.name == 'group'&&!item.isHide" :dataConfig="item" :merId="merId"></group>
|
|||
|
|
<!-- 积分 -->
|
|||
|
|
<intergralShop v-if="item.name == 'intergral'&&!item.isHide" :dataConfig="item">
|
|||
|
|
</intergralShop>
|
|||
|
|
<!-- 辅助线 -->
|
|||
|
|
<guide v-if="item.name == 'guide'&&!item.isHide" :dataConfig="item"></guide>
|
|||
|
|
<!-- 富文本-->
|
|||
|
|
<rich-text-editor v-if="item.name == 'richTextEditor'&&!item.isHide" :richTextVal="item.richText.val"
|
|||
|
|
:dataConfig="item"></rich-text-editor>
|
|||
|
|
<!-- 辅助空白-->
|
|||
|
|
<blank-page v-if="item.name == 'blankPage'&&!item.isHide" :dataConfig="item"></blank-page>
|
|||
|
|
<!-- 标题 -->
|
|||
|
|
<home-title v-if="item.name == 'titles'&&!item.isHide" :dataConfig="item" :merId="merId"></home-title>
|
|||
|
|
<!-- 逛逛 -->
|
|||
|
|
<discover v-if="item.name == 'homeDiscover'&&!item.isHide" :dataConfig="item"
|
|||
|
|
:isLogin="isLogin">
|
|||
|
|
</discover>
|
|||
|
|
<!-- 商品列表 圈层参数有特殊处理-->
|
|||
|
|
<goodList v-if="item.name == 'goodList'&&!item.isHide" :dataConfig="item" :merId="merId"
|
|||
|
|
:regionIds="regionIds" @detail="goDetail"></goodList>
|
|||
|
|
<!-- 选项卡商品列表-->
|
|||
|
|
<homeTab v-if="item.name == 'homeTab'&&!item.isHide" :dataConfig="item" @detail="goDetail" :merId="merId" :regionIds="regionIds">
|
|||
|
|
</homeTab>
|
|||
|
|
<member-card :merMemberInfo="merMemberInfo" v-if="item.name == 'memberCard'&&!item.isHide" @activate-membership="activateMembership" :merchantInfo="merchantAPPInfo" :configObj="item" :merId="merId">
|
|||
|
|
</member-card>
|
|||
|
|
<member-coupon v-if="item.name == 'memberCoupon'&&!item.isHide" @activate-membership="activateMembership" :merMemberInfo="merMemberInfo" :configObj="item" :merId="merId"></member-coupon>
|
|||
|
|
<member-benefits v-if="item.name == 'memberBenefits'&&!item.isHide" :merMemberInfo="merMemberInfo" :configObj="item" :merId="merId"></member-benefits>
|
|||
|
|
<member-recharge v-if="item.name == 'memberRecharge'&&!item.isHide" @activate-membership="activateMembership" :merMemberInfo="merMemberInfo" :configObj="item" :merId="merId"></member-recharge>
|
|||
|
|
<!-- 底部导航-->
|
|||
|
|
<page-footer v-if="item.name == 'footer'&&!item.isHide" :dataConfig="item" :isSmallPage="isSmallPage"
|
|||
|
|
:merId="merId" :fromTo="fromTo"></page-footer>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
|
|||
|
|
<!-- 分类页-->
|
|||
|
|
<view class="productList" v-if="navIndex === 1 && sortList.length>0">
|
|||
|
|
<view class="sort acea-row" :class="sortList.length ? '' : 'no_pad'"
|
|||
|
|
:style="{ marginTop: sortMarTop + 'px' }">
|
|||
|
|
<navigator hover-class="none"
|
|||
|
|
:url="'/pages/goods/goods_list/index?cid=' + item.id + '&title=' + item.name"
|
|||
|
|
class="item" v-for="(item, index) in sortList" :key="index">
|
|||
|
|
<view class="pictrue">
|
|||
|
|
<image :src="item.icon" class='slide-image tui-skeleton-rect'></image>
|
|||
|
|
</view>
|
|||
|
|
<view class="text">{{ item.name }}</view>
|
|||
|
|
</navigator>
|
|||
|
|
<view class="item" @click="bindMore()" v-if="sortList.length >= 9">
|
|||
|
|
<view class="pictrues acea-row row-center-wrapper">
|
|||
|
|
<text class="iconfont icon-ic_more"></text>
|
|||
|
|
</view>
|
|||
|
|
<view class="text">更多</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<!-- 推荐商品,分类商品列表-->
|
|||
|
|
<recommend v-if="categoryId>0 && isLoading" :key="categoryId" ref="recommendIndex"
|
|||
|
|
:categoryId='categoryId' :isShowTitle="isShowTitle" @getRecommendLength="getRecommendLength">
|
|||
|
|
</recommend>
|
|||
|
|
<view class='noCommodity' v-if="isNoCommodity&& navIndex > 0">
|
|||
|
|
<view class='pictrue'>
|
|||
|
|
<image :src="urlDomain+'crmebimage/presets/noShopper.png'"></image>
|
|||
|
|
</view>
|
|||
|
|
<text class="text-ccc">暂无商品</text>
|
|||
|
|
</view>
|
|||
|
|
</view>
|
|||
|
|
<!-- 底部导航距离,做兼容处理的-->
|
|||
|
|
<view class="footerBottom"></view>
|
|||
|
|
<!-- #ifdef MP -->
|
|||
|
|
<aTip :isCustom="true" :text="wxText" :borderR="5"></aTip>
|
|||
|
|
<!-- #endif -->
|
|||
|
|
|
|||
|
|
<!--加入会员-->
|
|||
|
|
<uni-popup ref="membershipRef" type="bottom" borderRadius="20px 20px 0 0">
|
|||
|
|
<join-membership @close="closeMembership" @handleSuccessful="handleSuccessful" :avatar="merchantAPPInfo.avatar" :name="merchantAPPInfo.name" :merId="merId"></join-membership>
|
|||
|
|
</uni-popup>
|
|||
|
|
<!--优惠券弹窗-->
|
|||
|
|
<uni-popup ref="couponRef" type="center" borderRadius="20px 20px 0 0">
|
|||
|
|
<coupon-pop @close="closeCoupon" :couponList="couponList"></coupon-pop>
|
|||
|
|
</uni-popup>
|
|||
|
|
</view>
|
|||
|
|
</template>
|
|||
|
|
|
|||
|
|
<script>
|
|||
|
|
import { mapGetters } from "vuex";
|
|||
|
|
import aTip from "./addTips";
|
|||
|
|
import homeComb from "./homeComb";
|
|||
|
|
import tuiSkeleton from "@/components/base/tui-skeleton";
|
|||
|
|
import recommend from "@/components/base/recommend";
|
|||
|
|
import pageFooter from "@/components/pageFooter";
|
|||
|
|
import liveBroadcast from "./liveBroadcast";
|
|||
|
|
import couponDialog from "./couponDialog";
|
|||
|
|
import pictureCube from "./pictureCube";
|
|||
|
|
import coupon from "./coupon";
|
|||
|
|
import menus from "./menus";
|
|||
|
|
import headerSearch from "./headerSearch";
|
|||
|
|
import cateNav from "./cateNav";
|
|||
|
|
import goodList from "./goodList";
|
|||
|
|
import news from "./news";
|
|||
|
|
import articleList from "./articleList";
|
|||
|
|
import swiperBg from "./swiperBg";
|
|||
|
|
import richTextEditor from "./richTextEditor";
|
|||
|
|
import homeTab from "./homeTab";
|
|||
|
|
import intergralShop from "./intergralShop";
|
|||
|
|
import group from "./group";
|
|||
|
|
import hotSpot from "./hotSpot";
|
|||
|
|
import blankPage from "./blankPage";
|
|||
|
|
import discover from "./discover";
|
|||
|
|
import seckillData from "./seckill.vue";
|
|||
|
|
import shortVideo from './video';
|
|||
|
|
import homeTitle from './title';
|
|||
|
|
import merHomeComb from "./merHomeComb";
|
|||
|
|
import merHome from "@/components/merHome";
|
|||
|
|
import merchantList from "./merchant";
|
|||
|
|
import guide from "./guide";
|
|||
|
|
import {getCategoryThird} from "@/api/api";
|
|||
|
|
import {goProductDetail} from "@/libs/order";
|
|||
|
|
import memberCard from "./memberCard";
|
|||
|
|
import memberCoupon from "./memberCoupon";
|
|||
|
|
import memberBenefits from "./memberBenefits";
|
|||
|
|
import memberRecharge from "./memberRecharge";
|
|||
|
|
import JoinMembership from "./joinMembership";
|
|||
|
|
import CouponPop from "./couponPop";
|
|||
|
|
let app = getApp();
|
|||
|
|
const EVENT = {
|
|||
|
|
SmallPage: 0,
|
|||
|
|
Classify: 1,
|
|||
|
|
HomePage: 2
|
|||
|
|
}
|
|||
|
|
export default {
|
|||
|
|
name: "diyPage",
|
|||
|
|
computed: mapGetters(['isLogin','bottomNavigationIsCustom', 'merchantAPPInfo']),
|
|||
|
|
components: {
|
|||
|
|
CouponPop,
|
|||
|
|
merHome,
|
|||
|
|
merHomeComb,
|
|||
|
|
aTip,
|
|||
|
|
merchantList,
|
|||
|
|
homeComb,
|
|||
|
|
recommend,
|
|||
|
|
tuiSkeleton,
|
|||
|
|
seckillData,
|
|||
|
|
pageFooter,
|
|||
|
|
liveBroadcast,
|
|||
|
|
couponDialog,
|
|||
|
|
coupon,
|
|||
|
|
menus,
|
|||
|
|
pictureCube,
|
|||
|
|
news,
|
|||
|
|
goodList,
|
|||
|
|
articleList,
|
|||
|
|
swiperBg,
|
|||
|
|
headerSearch,
|
|||
|
|
cateNav,
|
|||
|
|
richTextEditor,
|
|||
|
|
shortVideo,
|
|||
|
|
homeTab,
|
|||
|
|
discover,
|
|||
|
|
blankPage,
|
|||
|
|
homeTitle,
|
|||
|
|
hotSpot,
|
|||
|
|
group,
|
|||
|
|
intergralShop,
|
|||
|
|
guide,
|
|||
|
|
memberCard,
|
|||
|
|
memberCoupon,
|
|||
|
|
memberBenefits,
|
|||
|
|
memberRecharge,
|
|||
|
|
JoinMembership,
|
|||
|
|
},
|
|||
|
|
props: {
|
|||
|
|
merMemberInfo: { // 商户会员信息
|
|||
|
|
type: Object,
|
|||
|
|
default: () => {}
|
|||
|
|
},
|
|||
|
|
componentData: {
|
|||
|
|
type: Object,
|
|||
|
|
default: () => {}
|
|||
|
|
},
|
|||
|
|
merId: { // 商户id
|
|||
|
|
type: Number,
|
|||
|
|
default: 0
|
|||
|
|
},
|
|||
|
|
// 圈层ID集合,逗号分隔
|
|||
|
|
regionIds: {
|
|||
|
|
type: String,
|
|||
|
|
default: ''
|
|||
|
|
},
|
|||
|
|
isScrolled: { //是否开始滚动
|
|||
|
|
type: Boolean,
|
|||
|
|
default: false
|
|||
|
|
},
|
|||
|
|
isSmallPage: { //是否是微页面,true是,false不是
|
|||
|
|
type: Boolean,
|
|||
|
|
default: false
|
|||
|
|
},
|
|||
|
|
diyId: { //diyid
|
|||
|
|
type: Number,
|
|||
|
|
default: 0
|
|||
|
|
},
|
|||
|
|
fromTo: { //页面来源,为了区分店铺中底部导航使用的微页面,展示店铺配置的底部导航,
|
|||
|
|
type: String,
|
|||
|
|
default: ''
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
watch: {
|
|||
|
|
componentData: {
|
|||
|
|
handler(val) {
|
|||
|
|
this.getDiyInfo()
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
data(){
|
|||
|
|
return {
|
|||
|
|
theme: app.globalData.theme,
|
|||
|
|
wxText: "点击添加到我的小程序,微信首页下拉即可访问商城。",
|
|||
|
|
urlDomain: this.$Cache.get("imgHost"),
|
|||
|
|
sortMarTop: 0,
|
|||
|
|
cateNavActive: 0,
|
|||
|
|
sortList: [],
|
|||
|
|
categoryId: 0,
|
|||
|
|
isLoading: false,
|
|||
|
|
isShowTitle: false, //是否显示头部标题,同时也判断是否展示分类下的商品列表
|
|||
|
|
styleConfig: [], //DIY数据
|
|||
|
|
showCateNav: false, //是否显示分类导航组件
|
|||
|
|
cateNavData: {}, //分类导航组件数据
|
|||
|
|
showHomeComb: false, //是否显示组合
|
|||
|
|
showHeaderSerch: false, //是否显示搜索框
|
|||
|
|
bgInfo: {
|
|||
|
|
colorPicker: '#f5f5f5',
|
|||
|
|
isBgColor: 1,
|
|||
|
|
},
|
|||
|
|
homeCombData: {}, //组合组件数据
|
|||
|
|
headerSerchCombData: {}, //搜索框对象
|
|||
|
|
navIndex: 0, //判断首页显示内容,1显示分类页和商品,0首页
|
|||
|
|
isNoCommodity: false,
|
|||
|
|
couponList: []
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
mounted(){
|
|||
|
|
this.styleConfig = []
|
|||
|
|
this.getDiyInfo();
|
|||
|
|
},
|
|||
|
|
methods: {
|
|||
|
|
// 开通会员
|
|||
|
|
activateMembership(){
|
|||
|
|
this.$refs.membershipRef.open()
|
|||
|
|
},
|
|||
|
|
closeMembership(){
|
|||
|
|
this.$emit('updateMemberInfo')
|
|||
|
|
this.$refs.membershipRef.close()
|
|||
|
|
},
|
|||
|
|
closeCoupon(){
|
|||
|
|
this.$refs.couponRef.close()
|
|||
|
|
},
|
|||
|
|
// 成为会员回调
|
|||
|
|
handleSuccessful(couponList){
|
|||
|
|
if(couponList.length){
|
|||
|
|
this.couponList = couponList
|
|||
|
|
setTimeout(() => {
|
|||
|
|
this.$refs.couponRef.open();
|
|||
|
|
}, 100)
|
|||
|
|
}else{
|
|||
|
|
this.$util.Tips({
|
|||
|
|
title: '开通会员成功'
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
this.closeMembership()
|
|||
|
|
},
|
|||
|
|
goDetail(item) {
|
|||
|
|
goProductDetail(item.id, 0, '')
|
|||
|
|
},
|
|||
|
|
// diy数据
|
|||
|
|
getDiyInfo(){
|
|||
|
|
let data = this.componentData;
|
|||
|
|
this.styleConfig = this.$util.objToArr(data.value);
|
|||
|
|
this.bgInfo.isBgColor = data.isBgColor
|
|||
|
|
this.bgInfo.colorPicker = data.colorPicker
|
|||
|
|
this.styleConfig.forEach((item) => {
|
|||
|
|
if (item.name === 'tabNav' && !item.isHide) {
|
|||
|
|
this.showCateNav = true;
|
|||
|
|
this.cateNavData = item;
|
|||
|
|
}
|
|||
|
|
if (item.name === 'homeComb' && !item.isHide) {
|
|||
|
|
this.showHomeComb = true
|
|||
|
|
this.homeCombData = item;
|
|||
|
|
}
|
|||
|
|
if (item.name === 'headerSerch' && !item.isHide) {
|
|||
|
|
this.showHeaderSerch = true
|
|||
|
|
this.headerSerchCombData = item;
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
},
|
|||
|
|
// 分类切换点击
|
|||
|
|
changeTab(index, item) {
|
|||
|
|
//type=0微页面,1分类,2首页
|
|||
|
|
this.cateNavActive = index;
|
|||
|
|
if (item.type == EVENT.Classify) {
|
|||
|
|
this.navIndex = 1;
|
|||
|
|
if (!item.val) {
|
|||
|
|
this.sortList = [];
|
|||
|
|
this.categoryId = 0;
|
|||
|
|
this.$util.Tips({
|
|||
|
|
title: "请在平台端选择商品分类!确保加载商品分类数据。"
|
|||
|
|
});
|
|||
|
|
return;
|
|||
|
|
} else {
|
|||
|
|
this.isLoading = false; // 是否加载
|
|||
|
|
getCategoryThird(item.val).then(res => {
|
|||
|
|
this.sortList = res.data;
|
|||
|
|
// #ifdef H5
|
|||
|
|
self.sortMarTop = 10;
|
|||
|
|
// #endif
|
|||
|
|
this.isLoading = true;
|
|||
|
|
});
|
|||
|
|
this.categoryId = item.val;
|
|||
|
|
this.isShowTitle = false;
|
|||
|
|
}
|
|||
|
|
} else if (item.type == EVENT.SmallPage) {
|
|||
|
|
this.navIndex = 0;
|
|||
|
|
this.isShowTitle = true;
|
|||
|
|
this.categoryId = 0;
|
|||
|
|
if (!item.val) {
|
|||
|
|
return this.$util.Tips({
|
|||
|
|
title: "请在平台端选择微页面链接!确保加载微页面数据。"
|
|||
|
|
});
|
|||
|
|
} else {
|
|||
|
|
this.changeReset();
|
|||
|
|
this.$emit('getDiyData', item.val, true)
|
|||
|
|
// this.diyData(item.val, true);
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
this.categoryId = 0;
|
|||
|
|
this.navIndex = 0;
|
|||
|
|
this.changeReset();
|
|||
|
|
this.$emit('getDiyData', this.isSmallPage ? this.diyId : item.val, false)
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
changeReset(){
|
|||
|
|
if(this.isSmallPage){
|
|||
|
|
this.styleConfig = [];
|
|||
|
|
this.showCateNav = false;
|
|||
|
|
this.showHeaderSerch = false;
|
|||
|
|
}else{
|
|||
|
|
this.styleConfig = [];
|
|||
|
|
}
|
|||
|
|
// this.$emit('getDiyData')
|
|||
|
|
},
|
|||
|
|
bindMore() {
|
|||
|
|
uni.setStorageSync('cateNavActive', this.cateNavActive);
|
|||
|
|
uni.setStorageSync('categoryId', this.categoryId);
|
|||
|
|
uni.switchTab({
|
|||
|
|
url: `/pages/goods_cate/index`
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
getRecommendLength(e) {
|
|||
|
|
this.isNoCommodity = e == 0 ? true : false;
|
|||
|
|
},
|
|||
|
|
getRecommend(){
|
|||
|
|
if(this.categoryId>0 && this.isLoading) this.$refs.recommendIndex.get_host_product();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<style scoped lang="scss">
|
|||
|
|
.noCommodity {
|
|||
|
|
margin-top: 30%;
|
|||
|
|
}
|
|||
|
|
.productList {
|
|||
|
|
background-color: #F5F5F5;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
|
|||
|
|
// min-height: 70vh;
|
|||
|
|
.sort {
|
|||
|
|
width: 710rpx;
|
|||
|
|
max-height: 380rpx;
|
|||
|
|
background: rgba(255, 255, 255, 1);
|
|||
|
|
border-radius: 16rpx;
|
|||
|
|
padding: 0rpx 0rpx 20rpx 0rpx !important;
|
|||
|
|
flex-wrap: wrap;
|
|||
|
|
margin: 25rpx auto 0 auto;
|
|||
|
|
|
|||
|
|
&.no_pad {
|
|||
|
|
padding: 0;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.item {
|
|||
|
|
width: 20%;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
text-align: center;
|
|||
|
|
|
|||
|
|
.pictrues {
|
|||
|
|
width: 90rpx;
|
|||
|
|
height: 90rpx;
|
|||
|
|
background: #F5F5F5;
|
|||
|
|
border-radius: 50%;
|
|||
|
|
margin: 0 auto;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.pictrue {
|
|||
|
|
width: 90rpx;
|
|||
|
|
height: 90rpx;
|
|||
|
|
background: #F5F5F5;
|
|||
|
|
border-radius: 50%;
|
|||
|
|
margin: 0 auto;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.slide-image {
|
|||
|
|
width: 90rpx;
|
|||
|
|
height: 90rpx;
|
|||
|
|
border-radius: 50%;
|
|||
|
|
overflow: hidden;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/deep/ .easy-loadimage,
|
|||
|
|
uni-image,
|
|||
|
|
.easy-loadimage {
|
|||
|
|
width: 90rpx;
|
|||
|
|
height: 90rpx;
|
|||
|
|
display: inline-block;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.text {
|
|||
|
|
color: #272727;
|
|||
|
|
font-size: 24rpx;
|
|||
|
|
margin-top: 10rpx;
|
|||
|
|
// overflow: hidden;
|
|||
|
|
white-space: nowrap;
|
|||
|
|
text-overflow: ellipsis;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.productList .list {
|
|||
|
|
padding: 0 20rpx;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.productList .list.on {
|
|||
|
|
background-color: #fff;
|
|||
|
|
border-top: 1px solid #f6f6f6;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.productList .list .item {
|
|||
|
|
width: 345rpx;
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
background-color: #fff;
|
|||
|
|
border-radius: 10rpx;
|
|||
|
|
|
|||
|
|
.name {
|
|||
|
|
display: flex;
|
|||
|
|
align-items: center;
|
|||
|
|
|
|||
|
|
.name_text {
|
|||
|
|
display: inline-block;
|
|||
|
|
max-width: 200rpx;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.page_content {
|
|||
|
|
overflow-x: hidden;
|
|||
|
|
|
|||
|
|
// background-color: #f5f5f5;
|
|||
|
|
.swiper {
|
|||
|
|
position: relative;
|
|||
|
|
width: 100%;
|
|||
|
|
height: 246rpx;
|
|||
|
|
margin: 0 auto;
|
|||
|
|
border-radius: 10rpx;
|
|||
|
|
overflow: hidden;
|
|||
|
|
margin-bottom: 25rpx;
|
|||
|
|
/* #ifdef MP */
|
|||
|
|
margin-top: 20rpx;
|
|||
|
|
|
|||
|
|
/* #endif */
|
|||
|
|
swiper,
|
|||
|
|
swiper-item,
|
|||
|
|
.slide-image,
|
|||
|
|
image {
|
|||
|
|
width: 100%;
|
|||
|
|
height: 246rpx;
|
|||
|
|
border-radius: 10rpx;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
</style>
|