zory 1 tydzień temu
rodzic
commit
ccfdadf793
5 zmienionych plików z 42 dodań i 8 usunięć
  1. 13 1
      App.vue
  2. 22 1
      main.js
  3. 2 1
      pages/goods/detail.vue
  4. 3 3
      pages/order/detail.vue
  5. 2 2
      pages/service/chat/chat.vue

+ 13 - 1
App.vue

@@ -11,7 +11,19 @@ export default {
 	},
 	onHide: function() {
 		console.log('App Hide')
-	}
+	},
+	getPhoneNumber: function({ params, success, fail }) {
+		console.log("获取手机号码",params,success,fail)
+		const { iv, encryptedData } = params;
+		// ...
+		// 开发者服务端解密 encryptedData,得到手机号
+		// ...
+		const result = {
+			phoneNumber: '13580006666',
+		}
+		// 回调前端模板
+		success(result)
+	},
 }
 </script>
 

+ 22 - 1
main.js

@@ -5,6 +5,20 @@ Vue.prototype.$store = store
 
 import common from 'static/js/common.js';
 Vue.prototype.$dialog = common;
+
+// 全局挂载getPhoneNumber方法,供生服插件调用
+Vue.prototype.getPhoneNumber = function({ params, success, fail }) {
+	console.log("获取手机号码",params,success,fail)
+	// 获取生服插件传递的加密参数
+	const { iv, encryptedData } = params
+	// 调用您的服务端接口,按照抖音官方解密规则解密encryptedData得到用户手机号
+	// 解密规则参考:https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/guide/open-capabilities/acquire-phone-number-acquire/
+	const result = {
+	phoneNumber: '13xxxxxxxxx'
+	}
+	// 回调通知生服插件获取手机号成功
+	success(result)
+}
 
 // #ifndef VUE3
 import Vue from 'vue'
@@ -21,7 +35,14 @@ app.$mount()
 // #ifdef VUE3
 import { createSSRApp } from 'vue'
 export function createApp() {
-  const app = createSSRApp(App)
+  const app = createSSRApp(App)
+  app.config.globalProperties.getPhoneNumber = ({ params, success, fail }) => {
+		console.log("获取手机号码",params,success,fail)
+		const { iv, encryptedData } = params
+		// 调用您的服务端接口解密encryptedData获取手机号
+		// 参考官方解密规则完成处理
+		success({ phoneNumber: '13xxxxxxxxx' })
+    }
   return {
     app
   }

+ 2 - 1
pages/goods/detail.vue

@@ -334,7 +334,8 @@ export default {
 			const query = uni.createSelectorQuery().in(this);
 			query.select(element).boundingClientRect();
 			query.exec(res => {
-				if (res && res[0]) this.swiperHeight = res[0].height;
+				console.log("动态高低",res)
+				if (res && res[0]) this.swiperHeight = res[0].height==0?res[0].width:res[0].height;
 			});
 		},
 		getGoodsInfo(event){

+ 3 - 3
pages/order/detail.vue

@@ -233,7 +233,7 @@ export default {
 			Api.detail({"order":app.order}).then((res)=>{
 				app.loading = false;
 				if (res.code && res.code !== 1) {
-					app.$dialog.showSuccess(res.msg,function(){
+					app.$dialog.showSuccess(res.msg,"none",function(){
 						uni.navigateBack()
 					});
 					return ;
@@ -284,7 +284,7 @@ export default {
 			app.$dialog.showError("确定要取消该订单吗?",function(res){
 				if (res.confirm) {
 					Api.del({"order":order,"type":"cancel"}).then((resp)=>{
-						if (res.code !== 1) {
+						if (resp.code !== 1) {
 							return app.$dialog.showSuccess(resp.msg)
 						}
 						app.$dialog.showSuccess(resp.msg)
@@ -297,7 +297,7 @@ export default {
 			app.$dialog.showError("删除后数据不可恢复,确定要删除吗",function(res){
 				if (res.confirm) {
 					Api.del({"order":order,"type":"del"}).then((resp)=>{
-						if (res.code !== 1) {
+						if (resp.code !== 1) {
 							return app.$dialog.showSuccess(resp.msg)
 						}
 						app.$dialog.showSuccess(resp.msg)

+ 2 - 2
pages/service/chat/chat.vue

@@ -848,10 +848,10 @@ export default {
 	font-size: 24upx;
 }
 
-.m-order-s{background-color: #f8f8f8;border-radius: 10upx;display: flex;font-size: 28upx;position: relative;}
+.m-order-s{background-color: #f8f8f8;border-radius: 10upx;display: flex;font-size: 28upx;position: relative;margin-bottom: 20upx;}
 .m-order-s .order-img {display: flex;align-items: center;justify-content: center;}
 .m-order-s .order-img image{width: 150upx;height: 150upx;}
-.m-order-s .order-info {padding: 15upx;}
+.m-order-s .order-info {padding: 15upx;flex:1;overflow: hidden;}
 .m-order-s .order-info .title{font-size: 28upx;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
 .m-order-s .order-info .desc{font-size: 24upx;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;color: #999;}
 .m-order-s .order-info .price{font-size: 28upx;color: #f00;}