Commit e113eb2a authored by 罗超's avatar 罗超

部分调整

parent fac72648
......@@ -52,13 +52,13 @@ export default {
return {};
},
methods: {
clickTitleHandler(e) {
clickTitleHandler() {
if (
this.ts.link &&
this.ts.link.new_link_url &&
this.ts.link.new_link_url != ""
this.ts.link.url &&
this.ts.link.url != ""
) {
uni.navigateTo({ url: this.ts.link.new_link_url });
uni.navigateTo({ url: this.ts.link.url });
}
}
}
......
<template>
<view>
<view :style="{ height: contentHeight + 'px' }" style="voerflow: hidden; overflow-y: auto;">
<view class="head-pin-box">
<view class="left">
<image
src="../../static/images/icon/search.png"
mode="widthfix"
style="width:20px;height:20px;"
/>
</view>
<view class="middle"></view>
<view class="right">
<u-tabs
name="name"
:list="myPageData.home_pages.navs"
:is-scroll="true"
:active-color="mainColor"
:current="active"
:bar-width="80"
:font-size="32"
:bold="false"
@change="changeHandler"
></u-tabs>
</view>
</view>
</view>
<tabbars></tabbars>
</view>
</template>
<script>
import tabbars from "@/components/tabbar/index";
export default {
components: {
tabbars,
},
data() {
return {
contentHeight: 0,
pageTitle: "拼团",
advertisement:{},
banners:[]
};
},
mounted() {
let currentPages = getCurrentPages();
let c = this.$uiConfig.is_bang ? 80 : 52;
this.contentHeight = this.$utils.calcContentHeight(c);
console.log(this.contentHeight);
let u = "/" + currentPages[currentPages.length - 1].route;
let pages = uni.getStorageSync("basedata")
? uni.getStorageSync("basedata").bar_title
: [];
pages.forEach((x) => {
if (x.value == u) {
this.pageTitle = x.new_name ? x.new_name : x.name;
}
});
uni.setNavigationBarTitle({
title: this.pageTitle,
});
// this.init();
// this.getStyle();
uni.showNavigationBarLoading();
},
methods: {
init() {
let h = this.apiheader();
this.request(
{
url: "",
header: h,
data: {
r: "plugin/pintuan/api/v2/index/index",
status: this.current + 1,
page: this.page,
},
},
(res) => {
this.loading = false;
if (res.data.list.length > 0) {
this.g = this.g.concat(res.data.list);
}
}
);
},
},
};
</script>
<style>
.head-pin-box {
height: 80rpx;
display: flex;
align-items: center;
padding: 0 20rpx;
}
.head-pin-box .left {
height: 100%;
width: 90rpx;
display: flex;
align-items: center;
justify-content: center;
}
.head-pin-box .middle {
width: 2rpx;
background: #ddd;
height: 45rpx;
margin: 0 20rpx;
}
.head-pin-box .right {
height: 100%;
flex: 1;
}
</style>
\ No newline at end of file
<template>
<view class="goods">
<view class="u-skeleton" v-if="isExsitGoods">
<view class="u-skeleton-rect">
<u-swiper
:list="g.pic_url"
height="100"
unit="vw"
:interval="10000"
name="pic_url"
:border-radius="0"
@click="previewImage"
></u-swiper>
<view class="is_share" v-if="g.share > 0" style="top:240px;">
<image
src="@/static/images/icon/WechatIMG424.png"
style="width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode="widthFix"
/>
<view
style="
display: flex;
flex-direction: column;
margin-left: 8px;
font-size: 11px;
color: #fff;
opacity: 1;
"
>
<Text>即刻分享赚</Text>
<Text>{{ g.share }}</Text>
</view>
</view>
<view class="is_share" v-if="g.myBuyCommission > 0">
<image
src="@/static/images/icon/WechatIMG424.png"
style="width: 20px; margin-left: 12px; opacity: 1;height: auto;"
mode="widthFix"
/>
<view
style="
display: flex;
flex-direction: column;
margin-left: 8px;
font-size: 11px;
color: #fff;
opacity: 1;
"
>
<Text>即刻购买省</Text>
<Text>{{ g.myBuyCommission }}</Text>
</view>
</view>
</view>
<view class="g-info">
<view class="g-name u-skeleton-rect">
<view
v-if="g.marketingLogo.iswords&&g.marketingLogo.iswords==1 && g.marketingLogo.words!=''"
class="Logo"
:style="{color: g.marketingLogo.wordsColor,
background:g.marketingLogo.wordsBack ,}"
>{{g.marketingLogo.words}}</view>
<image
v-if="g.marketingLogo.iswords&&g.marketingLogo.iswords==2&& g.marketingLogo.ico!=''"
mode="heightFix"
:src="g.marketingLogo.ico"
style=" height: 12px;margin-right: 5px"
/>
{{ g.name }}
</view>
<view class="g-price-box">
<view class="left">
<view class="price u-skeleton-rect" :style="{ color: mc }">
<text class="small"></text>
<text
class="numfont"
>{{ g.price_min == g.price_max ? g.price_min : g.price_min + '-' + g.price_max }}</text>
</view>
<!-- TODO is_common_user_member_price 普通用户会员价 -->
<!-- TODO is_member_user_member_price 会员用户会员价 -->
<view class="sell u-skeleton-rect">
<text class="oprice" v-if="setting.is_underline_price == 1">{{ g.original_price }}</text>
<text v-if="setting.is_sales == 1">已售出{{ g.sales }}{{ g.unit }}</text>
</view>
</view>
<view class="right u-skeleton-rect" @click="openShare" v-if="isAllowShare == 1">
<image src="@/static/images/icon/icon-share.png" class="share-icon" />
<text>分享</text>
</view>
</view>
</view>
<view class="sku-box u-skeleton-rect" style="align-items: flex-start;">
<view class="label" style="margin-top: 5px;">活动</view>
<view class="content" style="display: flex;flex-direction: column">
<view
style="display: flex;flex-direction: row;align-items: center;margin-bottom: 5px;"
v-if="g.goods_marketing_award.integral.title != ''"
>
<u-tag text="送积分" type="error" />
<text
style="margin-left: 5px; font-size: 12px;"
>{{ g.goods_marketing_award.integral.title }}</text>
</view>
<view
style="display: flex;flex-direction: row;align-items: center"
v-if="g.goods_marketing_award.PresentFXGradeMsg != ''"
@click="goVIP"
>
<u-tag text="送会员" type="error" />
<text
style="margin-left: 5px; font-size: 12px;"
>{{ g.goods_marketing_award.PresentFXGradeMsg }}</text>
</view>
<view
style="display: flex;flex-direction: row;align-items: center;margin-top: 5px;"
@click="goUrl(g.FreeShippingUrl)"
v-if="g.freeShippingName != null && g.freeShippingName != '' && (g.fullMoneyPinkage > 0 || g.fullNumPinkage > 0)"
>
<view
style="color: #fa3534;background: #fef0f0;padding: 12rpx 22rpx; font-size: 22rpx;margin-right: 5px;border: 1px solid #fde2e2;border-radius: 6rpx;"
>{{ g.freeShippingName != null ? g.freeShippingName : '' }}</view>
{{ g.fullMoneyPinkage > 0 && g.fullNumPinkage == 0 ? g.fullMoneyPinkage + '元包邮' : '' }}
{{ g.fullMoneyPinkage == 0 && g.fullNumPinkage > 0 ? g.fullNumPinkage + '件包邮' : '' }}
</view>
<!-- <view style="margin-top: 5px;" v-if="
g.goods_marketing_award.PresentFXGradeMsg == ''
&& g.goods_marketing_award.integral.title == '' &&
g.freeShippingName!=null && g.freeShippingName !='' &&(g.fullMoneyPinkage == 0 && g.fullNumPinkage==0)
">
<text>暂无活动</text>
</view>-->
</view>
</view>
<view class="sku-box u-skeleton-rect" style="align-items: flex-start;" v-if="sku.length > 0">
<view class="label">选择</view>
<view class="content">
<view class="sku-chosen" @click="chosenSku">
<view class="sku">{{ currentSku.attr_list.length > 0 ? '已' : '请' }}选择 {{ sku }}</view>
<view class="arrow">
<u-icon name="arrow" :size="32" color="#111"></u-icon>
</view>
</view>
<view class="suk-item" style="flex-wrap: wrap;">
<template v-if="skuimage.length > 0">
<view
v-for="(x, i) in skuimage"
class="item img"
style="margin-bottom: 5px;"
:key="i"
>
<image :src="x" style="width: 100%; height: 100%;" />
</view>
<view
class="item"
v-if="g.attr_groups[0].attr_list.length > 1"
>{{ g.attr_groups[0].attr_list.length }}{{ g.attr_groups[0].attr_group_name }}可选</view>
</template>
<template v-else>
<template v-for="(x, i) in g.attr_groups[0].attr_list">
<view
class="item"
v-if="i < 5"
:key="i"
style="margin-bottom: 5px;"
>{{ x.attr_name }}</view>
</template>
<view
class="item"
v-if="g.attr_groups[0].attr_list.length > 1"
>共{{ g.attr_groups[0].attr_list.length }}种{{ g.attr_groups[0].attr_group_name }}可选</view>
</template>
</view>
</view>
</view>
<view class="sku-box u-skeleton-rect" v-if="setting.is_express == '1'">
<view class="label">快递</view>
<view class="content">{{ g.express == '' ? '免运费' : '¥' + g.express }}</view>
</view>
<view
class="sku-box u-skeleton-rect"
style="margin-top: -10;"
v-if="g.goods_marketing.shipping != ''"
>
<view class="label">包邮</view>
<view class="content">{{ g.goods_marketing.shipping }}</view>
</view>
<view
class="sku-box u-skeleton-rect"
style="margin-top: -10;"
v-if="g.goods_marketing.limit != ''"
>
<view class="label">限购</view>
<view class="content">{{ g.goods_marketing.limit }}</view>
</view>
<view class="sku-box u-skeleton-rect" v-if="comments.length == 0 && setting.is_comment == 1">
<view class="label">暂无评论信息</view>
</view>
<view class="comment" v-if="comments.length > 0">
<view class="chead">
<u-section
:bold="false"
:sub-color="secondary"
:show-split="false"
:title="`商品评价(${comments.length})`"
sub-title="查看更多"
@click="clickCommentHandler"
font-size="24"
></u-section>
</view>
<view class="content">
<view class="u-box">
<view class="user">
<u-avatar :src="comments[0].UserPhotoPath" :size="50"></u-avatar>
<text style="margin-left: 10px;">{{ comments[0].UserName }}</text>
</view>
<view class="timer">{{ comments[0].CreateDate }}</view>
</view>
<view class="ucontent">{{ comments[0].Content }}</view>
</view>
</view>
<u-divider :margin-top="20" :margin-bottom="20" bg-color="transparent">商品详情</u-divider>
<view class="details">
<!-- <rich-text :nodes="detailContent" @click="clickDescription"></rich-text> -->
<h-parse :content="detailContent" @navigate="clickDescription"></h-parse>
</view>
<u-divider :margin-top="20" :margin-bottom="20" bg-color="transparent">或许你喜欢</u-divider>
<view style="width: calc(100vw - 20px); margin-left: 10px; overflow: hidden;">
<goodlist :list="recommend"></goodlist>
</view>
<u-skeleton v-if="loading" :loading="true" :animation="true" bgcolor="#FFF"></u-skeleton>
<goodsaction
v-if="!loading"
:good-name="g.name"
:cover-pic="g.cover_pic"
:favorite="g.favorite"
:good-id="id"
:total-stock="g.totalStock"
:status="g.status"
@joincar="joinCar"
@buy="buy"
></goodsaction>
<goodsku
v-if="!loading && showSku"
border-radius="10"
v-model="showSku"
:mask-close-able="true"
:safe-area-inset-bottom="true"
:good="g"
:option-type="ot"
:skued="currentSku"
@close="closeSkuChosen"
></goodsku>
</view>
<u-empty text="没有找到商品,或商品已下架" mode="favor" v-if="!isExsitGoods"></u-empty>
<share
:good-id="id"
v-if="showShare"
:good-name="g.name"
:images="g.pic_url"
:advertising="g.advertising"
@close="closeShare"
></share>
<auth v-if="showAuth" @changeuserinfo="reloadUserinfo" @gbAuth="gbAuth"></auth>
<coupon
v-if="showCoupons"
:coupon-message="couponMessage"
@goLook="goLook"
@closeBtn="closeBtn"
></coupon>
</view>
</template>
<script>
// #ifdef APP-NVUE
const dom = weex.requireModule("dom");
// #endif
import goodlist from "@/components/goods/list";
import goodsaction from "./components/goodsaction";
import goodsku from "@/components/goods/goodsku";
import auth from "@/components/auth/index";
import coupon from "@/components/coupons/coupons";
import share from "./components/share/share";
import hParse from "@/components/u-parse/parse.vue";
export default {
data() {
return {
id: 0,
loading: true,
g: {},
imgs: [],
mc: "",
sku: "",
skuimage: [],
comments: [],
secondary: "",
detailContent: "",
recommend: [],
showSku: false,
ot: 0,
currentSku: {},
isExsitGoods: true,
pageTitle: "商品详情",
setting: {},
prevPage: "",
//自定义接手传递
opTionObj: {},
showShare: false,
msg: {
pageIndex: 1,
pageSize: 20,
GoodsId: 0,
CommentGrade: 0,
},
showAuth: false,
showCoupons: false,
couponMessage: "",
isAllowShare: 1,
u: {},
vipState: {},
};
},
components: {
goodlist,
goodsaction,
goodsku,
auth,
coupon,
share,
hParse,
},
onLoad(option) {
this.opTionObj = option;
console.log(option, "option");
if (option && option.id) {
this.id = option.id ? option.id : 29; //40887 59512 46942
} else {
this.id = option.GoodsId ? option.GoodsId : 29; //40887 59512 46942
}
if (option && option.custom_params) {
let custom_params = JSON.parse(decodeURIComponent(option.custom_params));
console.log(custom_params);
if (custom_params.user_id) {
uni.setStorageSync("pid", { pid: custom_params.user_id });
}
}
if (option && option.user_id) {
uni.setStorageSync("pid", { pid: option.user_id });
}
if (uni.getStorageSync("AnchorName")) {
//如果有主播名称了先清除
uni.removeStorageSync("AnchorName");
}
if (option && option.AnchorName) {
//当传过来有主播名称的时候 存入缓存
uni.setStorageSync("AnchorName", { AnchorName: option.AnchorName });
}
this.u = uni.getStorageSync("mall_UserInfo");
this.init();
this.initPage();
this.getVipId();
this.mc = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
this.setting = uni.getStorageSync("basedata").mall.setting;
wx.showShareMenu({
withShareTicket: true,
menus: ["shareAppMessage", "shareTimeline"],
});
},
onShareTimeline() {
setTimeout(() => {
console.log("分享调用");
this.getReceive();
}, 2500);
let uid = uni.getStorageSync("mall_UserInfo")
? uni.getStorageSync("mall_UserInfo").UserId
: 0;
let title =
this.g.app_share_title != null && this.g.app_share_title != ""
? this.g.app_share_title
: this.g.name;
let imageUrl =
this.g.app_share_pic != null && this.g.app_share_pic != ""
? this.g.app_share_pic
: this.g.pic_url[0].pic_url;
let id = this.id;
return {
title: title,
query: "id=" + this.id + "&user_id=" + uid,
imageUrl: imageUrl,
};
},
onShareAppMessage(res) {
setTimeout(() => {
console.log("分享调用");
this.getReceive();
}, 2500);
let u = uni.getStorageSync("mall_UserInfo");
let uid = u.UserId ? u.UserId : 0;
return {
title:
this.g.app_share_title != null && this.g.app_share_title != ""
? this.g.app_share_title
: this.g.name,
path: "/pages/goods/goods?id=" + this.id + "&user_id=" + uid,
imageUrl:
this.g.app_share_pic != null && this.g.app_share_pic != ""
? this.g.app_share_pic
: this.g.pic_url[0].pic_url,
};
},
mounted() {
setTimeout(() => {
this.initImages();
}, 3000);
},
methods: {
clickDescription(e) {
console.log(e);
},
initImages() {
// let that = this;
let info = uni.createSelectorQuery().in(this);
info
.select(".goods")
.boundingClientRect((data) => {
console.log("得到布局位置信息" + JSON.stringify(data));
})
.exec();
},
reloadUserinfo() {
this.u = uni.getStorageSync("mall_UserInfo");
// this.showAuth = false;
this.init();
this.initPage();
},
//关闭登录窗口
gbAuth() {
this.showAuth = false;
},
initPage() {
let currentPages = getCurrentPages();
let u = "/" + currentPages[currentPages.length - 1].route;
let pages = uni.getStorageSync("basedata")
? uni.getStorageSync("basedata").bar_title
: [];
pages.forEach((x) => {
if (x.value == u) {
this.pageTitle = x.new_name ? x.new_name : x.name;
}
});
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
clickCommentHandler() {
uni.navigateTo({
url: "/pages/goods/comment-list?id=" + this.id,
});
},
getVipId() {
//获取会员ID
this.request2(
{
url: "/api/AppletGoods/GetAppletVipGradeInfo",
data: {},
},
(res) => {
if (res.data) {
this.vipState = res.data.VIPModel;
}
// this.initRecommend();
}
);
},
goVIP() {
//跳转到购买的页面查看
let GradeId = this.vipState.Id;
uni.navigateTo({
url: "/pages/share/buyInterest/index?showLook=1&GradeId=" + GradeId,
});
},
init() {
this.loading = true;
this.request2(
{
url: "/api/AppletGoods/GetAppletGoodsInfo",
data: {
GoodsId: this.id,
},
},
(res) => {
if (res.resultCode == 1) {
this.g = res.data.goods;
this.g.totalStock = 0;
this.g.attr.forEach((x) => {
this.g.totalStock += x.stock;
});
this.g.marketingLogo = JSON.parse(this.g.marketingLogo);
this.isAllowShare = res.data.goods.isAllowShare; //1为可以分享 2为不能分享
if (this.isAllowShare == 2) {
//隐藏分享的按钮
wx.hideShareMenu({
menus: ["shareAppMessage", "shareTimeline"],
});
}
this.g.pic_url.forEach((x) => {
this.imgs.push(x.pic_url);
});
if (this.g.attr_groups.length > 0) {
this.g.attr_groups.forEach((x, i) => {
if (i > 0) {
this.sku += ",";
}
this.sku += x.attr_group_name;
});
this.g.attr_groups[0].attr_list.forEach((x) => {
if (x.pic_url) {
this.skuimage.push(x.pic_url);
}
});
}
var richtext = this.g.detail;
// richtext = richtext.replace(
// /<img/g,
// '< img style="margin-top:-4px;width:100%"'
// );
this.detailContent = richtext;
this.loading = false;
//登录在调用评论接口
if (this.u) {
this.initComments();
this.setFootMarkInfo(res.data.goods.id);
}
this.initRecommend();
} else {
this.isExsitGoods = false;
}
}
);
},
previewImage(i) {
uni.previewImage({
urls: this.imgs,
current: i,
longPressActions: {
itemList: ["发送给朋友", "保存图片", "收藏"],
success: function (data) {
console.log(
"选中了第" +
(data.tapIndex + 1) +
"个按钮,第" +
(data.index + 1) +
"张图片"
);
},
fail: function (err) {
console.log(err.errMsg);
},
},
});
},
initComments() {
this.msg.GoodsId = this.id;
this.request2(
{
url: "/api/AppletOrder/GetAppletGoodsCommentPageList",
data: this.msg,
},
(res) => {
this.comments = res.data.pageData;
// this.initRecommend();
},
(err) => {
this.u = uni.getStorageSync("mall_UserInfo");
this.init();
this.initPage();
}
);
},
initRecommend() {
this.request2(
{
url: "/api/AppletGoods/GetAppletGoodsRecommendListForZY",
data: {
RecommendType: 1,
},
},
(res) => {
this.recommend = res.data.List;
}
);
},
setFootMarkInfo(id) {
this.request2(
{
url: "/api/AppletUser/SetUserFootMarkInfo",
data: {
GoodsId: id,
},
},
(res) => {}
);
},
joinCar() {
console.log("触发1");
this.showSku = true;
this.ot = 0;
},
buy() {
this.showSku = true;
this.ot = 1;
},
chosenSku() {
if (this.u) {
this.showSku = true;
this.ot = 2;
} else {
this.showAuth = true;
}
},
closeSkuChosen(obj) {
this.sku = "";
if (obj) {
this.currentSku = obj;
obj.attr_list.forEach((x, i) => {
if (i > 0) {
this.sku += ",";
}
this.sku += `"${x.attr_name}" `;
});
} else {
this.g.attr_groups.forEach((x, i) => {
if (i > 0) {
this.sku += ",";
}
this.sku += x.attr_group_name;
});
}
},
closeShare() {
this.showShare = false;
},
openShare() {
this.showShare = true;
},
getReceive() {
//分享进入调取领券接口
// 1-分享,2-购买并付款
this.request2(
{
url: "/api/AppletUser/ShareCoupon",
data: {
TriggerType: 1,
},
},
(res) => {
console.log(res, "res");
if (res.couponResultCode == 1) {
this.couponMessage = res.couponMessage;
this.showCoupons = true;
}
}
);
},
goLook() {
this.showCoupons = true;
uni.navigateTo({
url: "/pages/coupon/index/index",
});
},
closeBtn() {
this.showCoupons = false;
},
goUrl(url) {
uni.navigateTo({
url: url,
});
},
},
};
</script>
<style>
@font-face {
font-family: "oswald";
src: url("https://viitto-1301420277.cos.ap-chengdu.myqcloud.com/smallapp/Oswald-Regular.ttf");
}
.goods {
height: 100%;
background: #f5f5f5;
padding-bottom: 55px;
}
.goods .g-info {
background: #fff;
padding: 10px;
}
.goods .g-info .g-name {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
font-size: 16px;
height: 45px;
}
.goods .g-info .g-price-box {
display: flex;
align-items: flex-end;
}
.goods .g-info .g-price-box .left {
flex: 1;
width: 1px;
}
.goods .g-info .g-price-box .left .price {
margin: 15px 0;
font-size: 24px;
font-weight: bold;
height: 31px;
}
.goods .g-info .g-price-box .left .price .small {
font-size: 16px;
}
.goods .numfont {
font-family: "oswald";
font-weight: unset;
}
.goods .g-info .g-price-box .left .sell {
font-size: 12px;
color: gray;
}
.goods .g-info .g-price-box .left .sell .oprice {
text-decoration: line-through;
margin-right: 12px;
}
.goods .g-info .g-price-box .right {
width: 30px;
margin-left: 20px;
height: 100%;
font-size: 12px;
color: #333;
}
.goods .g-info .g-price-box .right .share-icon {
width: 22px;
height: 22px;
margin-bottom: 12rpx;
}
.goods .sku-box {
margin: 10px 0;
background: #fff;
display: flex;
padding: 15px 10px;
align-items: center;
}
.goods .sku-box .label {
font-size: 12px;
color: gray;
margin-right: 15px;
}
.goods .details {
padding: 10px;
}
.goods .sku-box .content {
width: 1px;
flex: 1;
color: #000;
font-size: 12px;
}
.goods .sku-box .content .sku-chosen {
display: flex;
align-items: center;
}
.goods .sku-box .content .sku-chosen .arrow {
width: 20px;
}
.goods .sku-box .content .sku-chosen .sku {
font-size: 12px;
width: 1rpx;
flex: 1;
}
.goods .sku-box .content .suk-item {
margin-top: 10px;
display: flex;
}
.goods .sku-box .content .suk-item .item {
margin-right: 5px;
background: #f5f5f5;
height: 24px;
line-height: 24px;
font-size: 12px;
padding: 0 5px;
border-radius: 3px;
overflow: hidden;
color: #999;
}
.goods .sku-box .content .suk-item .item.img {
padding: 0;
width: 24px;
}
.goods .comment {
margin: 10px 0;
background: #fff;
padding: 10px;
}
.goods .comment .chead {
padding-bottom: 10px;
border-bottom: 1px solid #f1f1f1;
}
.goods .comment .content {
display: flex;
flex-direction: column;
margin-top: 15px;
}
.goods .comment .content .u-box {
display: flex;
margin-bottom: 10px;
align-items: center;
}
.goods .comment .content .u-box .user {
flex: 1;
font-size: 12px;
color: gray;
align-items: center;
display: flex;
}
.goods .comment .content .u-box .timer {
font-size: 12px;
color: gray;
text-align: right;
flex: 1;
}
.goods .comment .content .u-box .ucontent {
font-size: 12px;
color: #000;
margin-top: 10px;
}
.goods .detals {
padding: 10px;
background: #fff;
margin-top: 10px;
}
.goods .detals * {
max-width: 100%;
}
.goods .is_share {
width: 120px;
height: 45px;
border-top-left-radius: 22.5px;
border-bottom-left-radius: 22.5px;
background: #111;
opacity: 0.8;
display: flex;
flex-direction: row;
align-items: center;
position: absolute;
top: 300px;
right: 0;
}
.goods .Logo {
padding: 1px 5px;
display: inline-block;
font-size: 22rpx;
margin-right: 5rpx;
border-radius: 4px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment