diff --git a/CoreCms.Net.Uni-App/CoreShop/core/models/cart.ts b/CoreCms.Net.Uni-App/CoreShop/core/models/cart.ts
index c31e34cf..7a9e9262 100644
--- a/CoreCms.Net.Uni-App/CoreShop/core/models/cart.ts
+++ b/CoreCms.Net.Uni-App/CoreShop/core/models/cart.ts
@@ -10,4 +10,9 @@ export interface CartListType {
userId ?: number;
weight ?: number;
select ?: boolean;
+}
+
+export interface CartMoneyNumType {
+ count ?: number,
+ money ?: number,
}
\ No newline at end of file
diff --git a/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-five/classify-five.vue b/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-five/classify-five.vue
index 6abd987e..1b9defe5 100644
--- a/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-five/classify-five.vue
+++ b/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-five/classify-five.vue
@@ -85,8 +85,8 @@
- 购物车数量:{{ state.cartCount }}
- ¥{{ state.cartMoney }}
+ 购物车数量:{{ props.cartData.count }}
+ ¥{{ props.cartData.money }}
@@ -126,8 +126,8 @@
import { reactive, watch, ref, onMounted, getCurrentInstance, nextTick } from 'vue';
import { advertPosition, UserToken, onClassifyPageHide, onClassifyPagePullDownRefresh } from '@/core/consts';
import { useLoginStore } from '@/core/store';
- import { queryGoodsPageList, queryCartNumAndMoney, queryGoodsDetailByToken, queryGoodsDetail, queryAddCart } from '@/core/api';
- import type { CategoriesType, Response, GoodsListType, GoodsType } from '@/core/models';
+ import { queryGoodsPageList, queryGoodsDetailByToken, queryGoodsDetail, queryAddCart } from '@/core/api';
+ import type { CategoriesType, Response, GoodsListType, GoodsType, CartMoneyNumType } from '@/core/models';
import { getDomInfo, handleStaticResources, handleRouteNavigateTo, handleShowToast, handleRouteSwitchTab } from '@/core/utils';
import { AddCartEnum, PaymentTypeEnum, RouteSwitchTabEnum } from '@/core/enum';
import GoodsDetailSkuPopup from '@/pages/components/goods-detail/components/goods-detail-sku/goods-detail-sku.vue';
@@ -142,10 +142,12 @@
data : Array,
height : number,
statusBarHeight : number,
+ cartData : CartMoneyNumType,
}>(), {
data: () => [],
height: 0,
statusBarHeight: 0,
+ cartData: () => ({}),
});
const bigClassifyPop = ref();
@@ -190,8 +192,9 @@
const addCartLoading = ref(false);
const handleBuyNow = useLoadingFn(onBuyNow, buyNowLoading);
- const handleAddCart = useLoadingFn(onAddCart, addCartLoading)
-
+ const handleAddCart = useLoadingFn(onAddCart, addCartLoading)
+
+ const emit = defineEmits(['getCartNumAndMoney'])
watch(() => props.data, (newVal : Array) => {
if (newVal) {
@@ -216,9 +219,9 @@
})
onMounted(() => {
- if (uni.getStorageSync(UserToken)) {
- getCartNumAndMoney();
- }
+ uni.$on(onClassifyPageHide, () => {
+ state.showSku = false;
+ })
uni.$on(onClassifyPagePullDownRefresh, () => {
state.page = 1;
@@ -226,10 +229,6 @@
state.goodsList = [];
})
- uni.$on(onClassifyPageHide, () => {
- state.showSku = false;
- })
-
nextTick(async () => {
state.bigClassifyH = ((await getDomInfo('.big-classify', instance.proxy)) as { height : number }).height;
setTimeout(async () => {
@@ -252,13 +251,6 @@
}
}
- /** 获取购物车数量和价格 */
- const getCartNumAndMoney = async () => {
- const cartNumAndMoney : Response<{ count : number, money : number }> = await queryCartNumAndMoney();
- state.cartCount = cartNumAndMoney?.data?.count || 0;
- state.cartMoney = cartNumAndMoney?.data?.money || 0;
- }
-
/** 选择sku */
const handleSelectSku = (id : number) => {
_useLoginStore.checkLogin(async () => {
@@ -296,7 +288,7 @@
if (addCart.status) {
handleShowToast(addCart.msg, "success");
/** 添加成功后,重新获取购物车数量和价格 */
- getCartNumAndMoney();
+ emit("getCartNumAndMoney");
/** 关闭sku弹框 */
handleChangePopup(false);
} else {
@@ -336,7 +328,7 @@
state.leftTabId = item?.child[0].id;
state.leftTabList = item?.child;
state.rightTabList = item?.child[0]?.child;
-
+
handleResetGoodsList();
hanlderHidebigClassifyPop();
}
diff --git a/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-four/classify-four.vue b/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-four/classify-four.vue
index 1bcaac9d..1d547d8a 100644
--- a/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-four/classify-four.vue
+++ b/CoreCms.Net.Uni-App/CoreShop/pages/classify/classify-page/classify-four/classify-four.vue
@@ -56,8 +56,8 @@
- 购物车数量:{{ state.cartCount }}
- ¥{{ state.cartMoney }}
+ 购物车数量:{{ props.cartData.count }}
+ ¥{{ props.cartData.money }}
@@ -77,8 +77,8 @@