e 1 rok temu
rodzic
commit
01294c3896

+ 1 - 1
project1/package-lock.json

@@ -10,7 +10,7 @@
       "license": "ISC",
       "dependencies": {
         "@vant/weapp": "^1.11.4",
-        "axios": "^1.6.7",
+        "axios": "^0.25.0",
         "axios-miniprogram-adapter": "^0.3.5",
         "axios-retry": "^4.0.0",
         "core-js": "^3.36.0",

+ 3 - 2
project1/package.json

@@ -1,7 +1,6 @@
 {
   "name": "project1",
   "version": "1.0.0",
-  "description": "",
   "main": "main.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1"
@@ -17,5 +16,7 @@
     "core-js": "^3.36.0",
     "crypto-js": "^4.2.0",
     "vue": "^3.4.21"
-  }
+  },
+  "devDependencies": {},
+  "description": ""
 }

+ 2 - 1
project1/pages.json

@@ -79,7 +79,8 @@
 			"van-goods-action": "/wxcomponents/dist/goods-action/index",
 			"van-goods-action-icon": "/wxcomponents/dist/goods-action-icon/index",
 			"van-goods-action-button": "/wxcomponents/dist/goods-action-button/index",
-			"van-action-sheet": "/wxcomponents/dist/action-sheet/index"
+			"van-action-sheet": "/wxcomponents/dist/action-sheet/index",
+			 "van-stepper": "/wxcomponents/dist/stepper/index"
 		}
 	},
 	"tabBar": {

+ 87 - 48
project1/pages/detail/detail.vue

@@ -41,11 +41,19 @@
 		</view>
 		<van-viewider customStyle="font-width: 3rpx;" />
 		<!-- 类别 -->
-		<view class="other">
+		<view class="other" @click="showMsg">
 			<text class="choose">已选:<text class="name">{{defaultSku.skuName}}</text></text>
 			<text class="space">...</text>
 		</view>
 		<van-viewider customStyle="font-width: 3rpx;" />
+		<van-cell title-style="cell-title" center value="共0条" is-link>
+			<template #title>
+				<text>评价:</text>
+				<text class="total">
+					好评{{commData.positiveRating}}%
+				</text>
+			</template>
+		</van-cell>
 		<view class="word">
 			<view>
 				<van-tag type="warning">全部({{ commData.number }})</van-tag>
@@ -66,15 +74,13 @@
 		<!-- 内容页 -->
 		<view v-html="formatHtml(prodData.content)"></view>
 		<!-- 购物框提示 -->
-		<van-action-sheet :show="showDesc" class="tips">
+		<van-action-sheet :show="showDesc" class="tips" @click-overlay="cancelDesc">
 			<!-- 商品提示信息 -->
 			<van-card :num="confirm.orderItem.prodCount" :price="defaultSku.price ? defaultSku.price : prodData.price"
 				:desc="prodData.brief" :title="defaultSku.skuName ? defaultSku.skuName : prodData.prodName"
 				:thumb="defaultSku.pic ? defaultSku.pic : prodData.pic">
-				<template #tags>
-				</template>
 				<template #footer>
-					<van-stepper v-model="confirm.orderItem.prodCount" integer />
+					<van-stepper :value="confirm.orderItem.prodCount" integer />
 				</template>
 			</van-card>
 			<!-- 型号 -->
@@ -82,19 +88,12 @@
 				<view>
 					<!-- {{tags}} -->
 					<view v-for="(item, idx) in tags" :key="idx">
-						<view style="text-align: left;">
-							{{ idx }}
-							<view class="right" v-for="(item1, index) in item" :key="index">
-								11111
-								{{item1}}
+						<text style="text-align: left;">
+							{{item.label}}
+						</text>
+							<view class="right" v-for="(news, index) in item.options" :key="index">
+								{{news.value}}
 							</view>
-						</view>
-						<!--	<view class="right" v-for="(a,b) in item" :key="b">
-							aaaa{{a}}
-						</view> -->
-						<!-- <van-tag @click="selectTag(idx, t)"
-							:class="{ 'prop-selected': selectedTag[idx] === t ? true : false }" plain
-							v-for="(t, index) in tag" :key="index" type="danger">{{ t }}</van-tag> -->
 					</view>
 				</view>
 				<view style="margin-top: 2rem;"></view>
@@ -107,6 +106,25 @@
 				</view>
 			</view>
 		</van-action-sheet>
+		</van-action-sheet>
+		<!-- 型号选择 -->
+		    <van-action-sheet :show="showMain" @click-overlay="cancelMain">
+		        <view class="action-sheet-content">
+		           <view>
+		                <view v-for="(tag, idx) in tags" :key="idx">
+		                    <view style="text-align: left;">
+		                        {{ tag.label }}
+		                    </view>
+		                    <van-tag @click="selectTag(idx, t)"
+		                        :class="{ 'prop-selected': selectedTag[idx] === t ? true : false }" plain
+		                        v-for="(t, index) in tag.options" :key="index" type="danger">{{ t.value }}</van-tag>
+		                </view>
+		            </view>
+		            <view style="margin-top: 2rem;"></view>
+		            <van-button :disabled="defaultSku.skuName ? false : true" type="danger" block
+		                @click="showMain = false">确定</van-button>
+		        </view>
+		    </van-action-sheet>
 		<!-- 导航栏 -->
 		<van-goods-action>
 			<van-goods-action-icon icon="cart-o" text="购物车" @click="onClickShop" />
@@ -138,6 +156,7 @@
 				selectedTag: {},
 				showDesc: false,
 				isCollection: false,
+				showMain:false,
 				tags: {},
 				commData: {
 					positiveRating: 0,
@@ -159,6 +178,7 @@
 					addrId: 0,
 					userChangeCoupon: 0,
 					couponIds: [],
+            skuList: [],
 					shopcart: {
 						basketId: 0,
 						prodId: 0,
@@ -175,8 +195,9 @@
 			let result = await prodInfo({
 				prodId: 71
 			})
-			console.log(result)
+			console.log(result,'99')
 			this.bannerList = result.skuList;
+			this.skuList = result.skuList;
 			this.prodList = result;
 			this.prodData = result;
 			this.init(result.skuList)
@@ -190,41 +211,56 @@
 		methods: {
 			init(sku) {
 				const properties = []
-				const propObject = {}
-				let defaultArr = []
-				for (let i = 0; i < sku.length; i++) {
-					properties.push(sku[i].properties)
-				}
-				for (let i = 0; i < properties.length; i++) {
-					const propStr = properties[i]
-					const propArr = propStr.split(";")
-					if (defaultArr.length === 0) {
-						defaultArr = propArr
-						this.defaultSku = sku[i]
-						if (sku.length === 1) return;
-					}
-					for (let n = 0; n < propArr.length; n++) {
-						const valueStr = propArr[n];
-						const valueArr = valueStr.split(":")
-						if (!propObject[valueArr[0]]) {
-							propObject[valueArr[0]] = new Set()
-						}
-						propObject[valueArr[0]].add(valueArr[1])
-					}
-				}
-				this.tags = propObject;
-				console.log(this.tags, 'this.tags')
+								const propObject = {}
+								let defaultArr = []
+								for (let i = 0; i < sku.length; i++) {
+									properties.push(sku[i].properties)
+								}
+								for (let i = 0; i < properties.length; i++) {
+									const propStr = properties[i]
+									const propArr = propStr.split(";")
+									if (defaultArr.length === 0) {
+										defaultArr = propArr
+										this.defaultSku = sku[i]
+										if (sku.length === 1) return;
+									}
+									for (let n = 0; n < propArr.length; n++) {
+										const valueStr = propArr[n];
+										const valueArr = valueStr.split(":")
+										if (!propObject[valueArr[0]]) {
+											propObject[valueArr[0]] = new Set()
+										}
+										propObject[valueArr[0]].add(valueArr[1])
+									}
+								}
+								const processedData = Object.entries(propObject).map(([key, values]) => {
+									return {
+										label: key,
+										options: Array.from(values).map(value => {
+											return {
+												label: value,
+												value: value
+											};
+										})
+									};
+								});
+
+								this.tags = processedData;
+								console.log(this.tags, 'this.tags')
 				for (let i = defaultArr.length - 1; i >= 0; i--) {
 					const valueStr = defaultArr[i];
 					const valueArr = valueStr.split(":")
 					this.$set(this.selectedTag, valueArr[0], valueArr[1])
 				}
 			},
-			async	addOrCancel() {
-				addOrCancel(71).then(res => {console.log(res,'收藏')})
-				// await	addOrCancel(this.prodData.prodId)
-            // await addOrCancel({prodId:this.prodData.prodId})
-            this.isCollection = await isCollection({ prodId: this.prodData.prodId })
+			showMsg() {
+				this.showMain = true;
+			},
+			cancelMain() {
+				this.showMain = false;
+			},
+			addOrCancel() {
+        this.isCollection = !this.isCollection
 			},
 			shopcartAdd() {
 				this.shopcart.basketId = 0
@@ -260,7 +296,10 @@
 				return formatHtml(t)
 			},
 			onClickButton() {
-				this.showDesc = !this.showDesc;
+				this.showDesc = true;
+			},
+			cancelDesc() {
+				this.showDesc = false;
 			},
 			onClickShop() {
 				uni.switchTab({

Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/components/Logo/Logo.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/detail/detail.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/home/home.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/register/register.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/shop/shop.js.map


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/.sourcemap/mp-weixin/pages/type/type.js.map


+ 2 - 1
project1/unpackage/dist/dev/mp-weixin/app.json

@@ -72,6 +72,7 @@
     "van-goods-action": "/wxcomponents/dist/goods-action/index",
     "van-goods-action-icon": "/wxcomponents/dist/goods-action-icon/index",
     "van-goods-action-button": "/wxcomponents/dist/goods-action-button/index",
-    "van-action-sheet": "/wxcomponents/dist/action-sheet/index"
+    "van-action-sheet": "/wxcomponents/dist/action-sheet/index",
+    "van-stepper": "/wxcomponents/dist/stepper/index"
   }
 }

+ 5 - 5
project1/unpackage/dist/dev/mp-weixin/common/vendor.js

@@ -1430,7 +1430,7 @@ function initData(vueOptions, context) {
     try {
       data = data.call(context); // 支持 Vue.prototype 上挂的数据
     } catch (e) {
-      if (Object({"VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
+      if (Object({"NODE_ENV":"development","VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
         console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);
       }
     }
@@ -8518,7 +8518,7 @@ function type(obj) {
 
 function flushCallbacks$1(vm) {
     if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
-        if (Object({"VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
+        if (Object({"NODE_ENV":"development","VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
             var mpInstance = vm.$scope;
             console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
                 ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
@@ -8539,14 +8539,14 @@ function nextTick$1(vm, cb) {
     //1.nextTick 之前 已 setData 且 setData 还未回调完成
     //2.nextTick 之前存在 render watcher
     if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
-        if(Object({"VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
+        if(Object({"NODE_ENV":"development","VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
             var mpInstance = vm.$scope;
             console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
                 ']:nextVueTick');
         }
         return nextTick(cb, vm)
     }else{
-        if(Object({"VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG){
+        if(Object({"NODE_ENV":"development","VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
             var mpInstance$1 = vm.$scope;
             console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
                 ']:nextMPTick');
@@ -8632,7 +8632,7 @@ var patch = function(oldVnode, vnode) {
     });
     var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
     if (Object.keys(diffData).length) {
-      if (Object({"VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","NODE_ENV":"development","BASE_URL":"/"}).VUE_APP_DEBUG) {
+      if (Object({"NODE_ENV":"development","VUE_APP_NAME":"project1","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
         console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
           ']差量更新',
           JSON.stringify(diffData));

Plik diff jest za duży
+ 25 - 1
project1/unpackage/dist/dev/mp-weixin/pages/detail/detail.js


Plik diff jest za duży
+ 0 - 0
project1/unpackage/dist/dev/mp-weixin/pages/detail/detail.wxml


Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików