shish hai 9 meses
pai
achega
49cc7787c6
Modificáronse 1 ficheiros con 33 adicións e 0 borrados
  1. 33 0
      hdApp/src/App.vue

+ 33 - 0
hdApp/src/App.vue

@@ -16,6 +16,39 @@ export default {
 			uni.removeStorageSync('suitInfoList');
 			uni.removeStorageSync('productInfoList');
 			uni.removeStorageSync('pxClassInfoList');
+
+    uni.onPushMessage((res) => {
+			console.log("收到推送消息:",res) //监听推送消息
+			let message = res.data;
+		  // 提取页面路径(支持 pagesOrder/detail 这样的格式)
+      let pagePath = message.payload && message.payload.page;
+			// 用户点击查看详情,跳转到指定页面
+			// 检查是否需要添加 / 前缀
+			let url = pagePath.startsWith('/') ? pagePath : `/${pagePath}`;
+			
+			// 如果有额外参数,拼接到URL
+			if (message.params || (message.payload && message.payload.params)) {
+				let params = message.params || message.payload.params;
+				let queryString = Object.keys(params).map(key => `${key}=${params[key]}`).join('&');
+				url = `${url}?${queryString}`;
+			}
+			console.log('推送消息跳转页面:', url);
+			
+			// 使用 navigateTo 跳转
+			uni.navigateTo({
+				url: url,
+				fail: (err) => {
+					console.error('页面跳转失败:', err);
+				}
+			});
+
+			// 设置角标
+			let badgeNumber = message.aps && message.aps.badge ? message.aps.badge - 1 : false;
+			if (badgeNumber !== false) {
+				plus.runtime.setBadgeNumber(badgeNumber);
+			}
+		})
+    
     // #ifdef H5
     // H5开发环境无法微信授权,使用固定的用户 shish 2020.4.30
     if (process.env.NODE_ENV == "development") {