优化框架
This commit is contained in:
@@ -3,10 +3,9 @@
|
||||
<view class="goods-info">
|
||||
<uv-swiper :list="photo" indicator indicatorMode="line" circular height="750rpx" radius="0"></uv-swiper>
|
||||
</view>
|
||||
<!-- <view class="merchant-name">{{ form.merchantName }}</view> -->
|
||||
<uni-card :border="false" :is-shadow="false" :padding="0">
|
||||
<uv-cell-group :customStyle="{backgroundColor: '#ffffff'}" :border="false">
|
||||
<uv-cell :cellStyle="{padding: '10px 5px'}">
|
||||
<uv-cell :border="false" :cellStyle="{padding: '10px 5px'}">
|
||||
<template v-slot:title>
|
||||
<view class="pirce-bar" style="display: flex;">
|
||||
<view class="web-text-danger">¥</view>
|
||||
@@ -17,20 +16,66 @@
|
||||
<text class="web-text-secondary" style="text-decoration: line-through">划线价¥{{ form.price * 2 }}</text>
|
||||
</template>
|
||||
</uv-cell>
|
||||
<uv-cell :title="form.goodsName" label="商品名称" :cellStyle="{padding: '10px 5px'}">
|
||||
<uv-cell :cellStyle="{padding: '0px 5px 15px 5px'}">
|
||||
<template v-slot:title>
|
||||
<view class="flex">
|
||||
<view class="web-text-heading font-bold" style="font-size: 26rpx; ">{{ form.goodsName }}</view>
|
||||
</view>
|
||||
</template>
|
||||
</uv-cell>
|
||||
<!-- <uv-cell title="选择款式" :label="`100zz【藏青色】、100zz【古红色】`" isLink-->
|
||||
<!-- :cellStyle="{padding: '10px 5px'}">-->
|
||||
<!-- </uv-cell>-->
|
||||
<uv-cell title="参数" :label="form.goodsName" :cellStyle="{padding: '10px 5px'}">
|
||||
</uv-cell>
|
||||
<uv-cell title="客服电话" label="0771-8888888" :border="false" :cellStyle="{padding: '10px 5px'}"
|
||||
@click="callPhone('0771-8888888')">
|
||||
<!-- <uv-cell title="参数" :label="form.goodsName" :cellStyle="{padding: '10px 5px'}">-->
|
||||
<!-- </uv-cell>-->
|
||||
<!-- <uv-cell title="客服电话" label="0771-8888888" :border="false" :cellStyle="{padding: '10px 5px'}"-->
|
||||
<!-- @click="callPhone('0771-8888888')">-->
|
||||
|
||||
</uv-cell>
|
||||
<!-- </uv-cell>-->
|
||||
</uv-cell-group>
|
||||
</uni-card>
|
||||
|
||||
<uni-card :border="false" :is-shadow="false" :padding="0">
|
||||
<uv-cell :cellStyle="{padding: '10px 5px'}" :center="true" @click="openSpecForm">
|
||||
<template v-slot:title>
|
||||
<view class="flex" v-if="!skuText">
|
||||
<view class="web-text-secondary w-15p">可选</view>
|
||||
<view class="uv-page__tag-item" v-for="(item, index) in form.goodsSpecValue" :key="index">
|
||||
<uv-tags :text="`${item.value}`" :plain="!item.checked" type="info" :name="index" class="mr-10"
|
||||
@click="radioClick">
|
||||
</uv-tags>
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex" v-else>
|
||||
<view class="web-text-secondary w-15p">已选</view>
|
||||
<uv-text class="web-text-heading" type="warning" plain :text="skuText" />
|
||||
</view>
|
||||
</template>
|
||||
<template v-slot:value>
|
||||
<uv-icon name="arrow-right" color="#cccccc"></uv-icon>
|
||||
</template>
|
||||
</uv-cell>
|
||||
<uv-cell :cellStyle="{padding: '10px 5px'}">
|
||||
<template v-slot:title>
|
||||
<view class="flex">
|
||||
<view class="web-text-secondary w-15p">配送</view>
|
||||
<view class="web-text-heading">啦啦</view>
|
||||
</view>
|
||||
</template>
|
||||
<template v-slot:value>
|
||||
<uv-icon name="arrow-right" color="#cccccc"></uv-icon>
|
||||
</template>
|
||||
</uv-cell>
|
||||
<uv-cell :border="false" :cellStyle="{padding: '10px 5px'}">
|
||||
<template v-slot:title>
|
||||
<view class="flex">
|
||||
<view class="web-text-secondary w-15p">保障</view>
|
||||
<view class="web-text-heading value">坏了包赔 假一赔十 七天无理由</view>
|
||||
</view>
|
||||
</template>
|
||||
<template v-slot:value>
|
||||
<uv-icon name="arrow-right" color="#cccccc"></uv-icon>
|
||||
</template>
|
||||
</uv-cell>
|
||||
</uni-card>
|
||||
|
||||
<uni-card title="商品详情" :is-shadow="false" :border="false" :padding="0">
|
||||
<view class="web-text-heading booking-content">
|
||||
<view v-html="form.content"></view>
|
||||
@@ -103,7 +148,7 @@
|
||||
</uv-cell-group>
|
||||
<view class="flex m-20 justify-between items-center">
|
||||
<view class="total-price web-text-heading">
|
||||
总计{{ isNew }}
|
||||
总计
|
||||
<text class="text-red-500" style="font-weight: 500; font-size: 36rpx">¥{{ form.price }}</text>
|
||||
</view>
|
||||
<view class="add-cart">
|
||||
@@ -156,6 +201,7 @@ import {
|
||||
import UvAvatar from "@/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.vue";
|
||||
import UvGap from "@/uni_modules/uv-gap/components/uv-gap/uv-gap.vue";
|
||||
import UvButton from "@/uni_modules/uv-button/components/uv-button/uv-button.vue";
|
||||
import UvText from "@/uni_modules/uv-text/components/uv-text/uv-text.vue";
|
||||
|
||||
const cartStore = useCartStore();
|
||||
const {
|
||||
@@ -173,7 +219,7 @@ const {
|
||||
} = storeToRefs(cartStore)
|
||||
|
||||
export default {
|
||||
components: {UvButton, UvGap, UvAvatar},
|
||||
components: {UvText, UvButton, UvGap, UvAvatar},
|
||||
data() {
|
||||
return {
|
||||
id: 0,
|
||||
@@ -247,7 +293,7 @@ export default {
|
||||
});
|
||||
|
||||
// 请求数据
|
||||
Promise.all([app.getGoods(), app.listCart()]).then(data => {
|
||||
Promise.all([app.getGoods(), app.listCart()]).then(data => {
|
||||
const form = data[0]
|
||||
form.content = this.formatRichText(form.content)
|
||||
app.form = form;
|
||||
@@ -268,7 +314,7 @@ export default {
|
||||
app.cart = data[1]
|
||||
console.log(app.cart.totalNums)
|
||||
// 更新购物车角标
|
||||
if(app.cart?.totalNums){
|
||||
if (app.cart?.totalNums) {
|
||||
app.options[1].info = app.cart.totalNums
|
||||
}
|
||||
})
|
||||
@@ -353,6 +399,9 @@ export default {
|
||||
'<img style="max-width:100%;height:auto;display:inline-block;margin:10rpx auto;"');
|
||||
return newContent;
|
||||
},
|
||||
openSpecForm(){
|
||||
this.$refs.specForm.open('center');
|
||||
},
|
||||
onClick({index, content}) {
|
||||
console.log(index, content)
|
||||
// 客服按钮
|
||||
@@ -433,6 +482,7 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
gotoBuy() {
|
||||
const app = this
|
||||
this.disabled = !this.disabled;
|
||||
@@ -441,15 +491,14 @@ export default {
|
||||
spec: app.skuText,
|
||||
cartNum: 1,
|
||||
isNew: app.isNew
|
||||
}).then(data => {
|
||||
app.options[1].info = data.totalNums
|
||||
}).then(cardId => {
|
||||
if (app.isNew) {
|
||||
// CartApi.removeCart(data.id)
|
||||
// 跳转页面
|
||||
uni.navigateTo({
|
||||
url: `/package/goods/checkout?id=${data.id}`
|
||||
url: `/package/goods/checkout?id=${cardId}`
|
||||
})
|
||||
}else {
|
||||
} else {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user