From 6e931a91eeb7a4ca18ec17a5eaf10ec12935d43b Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Thu, 14 Jul 2022 20:42:56 +0800 Subject: [PATCH] wip(push): revert --- packages/uni-api/src/service/plugin/push.ts | 14 ++---- packages/uni-app-plus/dist/uni.runtime.esm.js | 13 ++---- packages/uni-h5/dist/uni-h5.es.js | 12 ++--- packages/uni-mp-alipay/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-baidu/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-kuaishou/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-lark/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-qq/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-toutiao/dist/uni.api.esm.js | 13 ++---- packages/uni-mp-weixin/dist/uni.api.esm.js | 13 ++---- packages/uni-push/dist/uni-push.es.js | 46 ------------------- packages/uni-push/dist/uni-push.plus.es.js | 36 --------------- packages/uni-push/src/index.ts | 12 ----- packages/uni-push/src/plus.ts | 3 -- packages/uni-push/src/route.ts | 44 ++++++------------ .../uni-quickapp-webview/dist/uni.api.esm.js | 13 ++---- 16 files changed, 57 insertions(+), 227 deletions(-) diff --git a/packages/uni-api/src/service/plugin/push.ts b/packages/uni-api/src/service/plugin/push.ts index 706fde0da..e93dd36d7 100644 --- a/packages/uni-api/src/service/plugin/push.ts +++ b/packages/uni-api/src/service/plugin/push.ts @@ -54,17 +54,12 @@ export function invokePushCallback( cidErrMsg = args.errMsg invokeGetPushCidCallbacks(cid, args.errMsg) } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg: OnPushMessageSuccess = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - } - onPushMessageCallbacks[i](msg) - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break - } - } + }) + }) } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { callback({ @@ -111,7 +106,6 @@ export const getPushClientId = defineAsyncApi( interface OnPushMessageSuccess { type: 'click' | 'receive' data: unknown - stopped?: boolean } type OnPushMessageCallback = (result: OnPushMessageSuccess) => void diff --git a/packages/uni-app-plus/dist/uni.runtime.esm.js b/packages/uni-app-plus/dist/uni.runtime.esm.js index 60b712c33..5e28f555e 100644 --- a/packages/uni-app-plus/dist/uni.runtime.esm.js +++ b/packages/uni-app-plus/dist/uni.runtime.esm.js @@ -11096,17 +11096,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-h5/dist/uni-h5.es.js b/packages/uni-h5/dist/uni-h5.es.js index 6bd89a0f2..9886c296e 100644 --- a/packages/uni-h5/dist/uni-h5.es.js +++ b/packages/uni-h5/dist/uni-h5.es.js @@ -4625,16 +4625,12 @@ function invokePushCallback(args) { cidErrMsg = args.errMsg; invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === "pushMsg") { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: "receive", data: normalizePushMessage(args.message) - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - break; - } - } + }); + }); } else if (args.type === "click") { onPushMessageCallbacks.forEach((callback) => { callback({ diff --git a/packages/uni-mp-alipay/dist/uni.api.esm.js b/packages/uni-mp-alipay/dist/uni.api.esm.js index 7003b155a..ee92f0579 100644 --- a/packages/uni-mp-alipay/dist/uni.api.esm.js +++ b/packages/uni-mp-alipay/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-baidu/dist/uni.api.esm.js b/packages/uni-mp-baidu/dist/uni.api.esm.js index 433db64f5..0f667cc3a 100644 --- a/packages/uni-mp-baidu/dist/uni.api.esm.js +++ b/packages/uni-mp-baidu/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-kuaishou/dist/uni.api.esm.js b/packages/uni-mp-kuaishou/dist/uni.api.esm.js index ece0ad994..d4e7da7c1 100644 --- a/packages/uni-mp-kuaishou/dist/uni.api.esm.js +++ b/packages/uni-mp-kuaishou/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-lark/dist/uni.api.esm.js b/packages/uni-mp-lark/dist/uni.api.esm.js index 65c56def2..c67b7d2b5 100644 --- a/packages/uni-mp-lark/dist/uni.api.esm.js +++ b/packages/uni-mp-lark/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-qq/dist/uni.api.esm.js b/packages/uni-mp-qq/dist/uni.api.esm.js index c33cea0b0..ff0b5c098 100644 --- a/packages/uni-mp-qq/dist/uni.api.esm.js +++ b/packages/uni-mp-qq/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-toutiao/dist/uni.api.esm.js b/packages/uni-mp-toutiao/dist/uni.api.esm.js index 534bcc402..3413216bd 100644 --- a/packages/uni-mp-toutiao/dist/uni.api.esm.js +++ b/packages/uni-mp-toutiao/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-mp-weixin/dist/uni.api.esm.js b/packages/uni-mp-weixin/dist/uni.api.esm.js index ad968cd37..656dc79bd 100644 --- a/packages/uni-mp-weixin/dist/uni.api.esm.js +++ b/packages/uni-mp-weixin/dist/uni.api.esm.js @@ -635,17 +635,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { diff --git a/packages/uni-push/dist/uni-push.es.js b/packages/uni-push/dist/uni-push.es.js index 48b8c1acb..e0f491cb0 100644 --- a/packages/uni-push/dist/uni-push.es.js +++ b/packages/uni-push/dist/uni-push.es.js @@ -100,41 +100,6 @@ e?.onClose(t); var GtPush = /*@__PURE__*/getDefaultExportFromCjs(gtpushMin); -function initPushRoute() { - // @ts-expect-error - uni.onPushMessage((res) => { - if (res.data && res.data.path) { - if (res.type === 'click') { - const url = res.data.path; - // 优先使用 navigateTo - uni.navigateTo({ - url, - fail(result) { - // 说明是 tabBar 页面,必须使用 switchTab - if (result.errMsg.indexOf('tabbar')) { - uni.switchTab({ - url, - }); - } - }, - }); - } - else if (res.type === 'receive') { - // 仅 App 端 - if (typeof plus !== 'undefined' && plus.push) { - // 创建通知栏,并屏蔽消息的继续传递 - plus.push.createMessage(res.data.content, JSON.stringify(res.data.payload), { - title: res.data.title, - path: res.data.path, - }); - // 内部属性,停止传播 - res.stopped = true; - } - } - } - }); -} - // if (process.env.UNI_PUSH_DEBUG) { // GtPush.setDebugMode(true) // } @@ -187,15 +152,4 @@ else { }); }, }); - initPushRoute(); - // 不用条件编译。App端仍需监听 - if (typeof plus !== 'undefined' && plus.push) { - plus.push.addEventListener('click', (result) => { - // @ts-expect-error - uni.invokePushCallback({ - type: 'click', - message: result, - }); - }); - } } diff --git a/packages/uni-push/dist/uni-push.plus.es.js b/packages/uni-push/dist/uni-push.plus.es.js index f4caafebc..bcdc4a988 100644 --- a/packages/uni-push/dist/uni-push.plus.es.js +++ b/packages/uni-push/dist/uni-push.plus.es.js @@ -1,43 +1,7 @@ -function initPushRoute() { - // @ts-expect-error - uni.onPushMessage((res) => { - if (res.data && res.data.path) { - if (res.type === 'click') { - const url = res.data.path; - // 优先使用 navigateTo - uni.navigateTo({ - url, - fail(result) { - // 说明是 tabBar 页面,必须使用 switchTab - if (result.errMsg.indexOf('tabbar')) { - uni.switchTab({ - url, - }); - } - }, - }); - } - else if (res.type === 'receive') { - // 仅 App 端 - if (typeof plus !== 'undefined' && plus.push) { - // 创建通知栏,并屏蔽消息的继续传递 - plus.push.createMessage(res.data.content, JSON.stringify(res.data.payload), { - title: res.data.title, - path: res.data.path, - }); - // 内部属性,停止传播 - res.stopped = true; - } - } - } - }); -} - // @ts-expect-error uni.invokePushCallback({ type: 'enabled', }); -initPushRoute(); Promise.resolve().then(() => { plus.push.setAutoNotification && plus.push.setAutoNotification(false); const info = plus.push.getClientInfo(); diff --git a/packages/uni-push/src/index.ts b/packages/uni-push/src/index.ts index 921a3d990..0070f22bd 100644 --- a/packages/uni-push/src/index.ts +++ b/packages/uni-push/src/index.ts @@ -1,5 +1,4 @@ import GtPush from '../lib/gtpush-min' -import { initPushRoute } from './route' // if (process.env.UNI_PUSH_DEBUG) { // GtPush.setDebugMode(true) @@ -54,15 +53,4 @@ if (!appid) { }) }, }) - initPushRoute() - // 不用条件编译。App端仍需监听 - if (typeof plus !== 'undefined' && plus.push) { - plus.push.addEventListener('click', (result) => { - // @ts-expect-error - uni.invokePushCallback({ - type: 'click', - message: result, - }) - }) - } } diff --git a/packages/uni-push/src/plus.ts b/packages/uni-push/src/plus.ts index 30383a522..6aaecbc39 100644 --- a/packages/uni-push/src/plus.ts +++ b/packages/uni-push/src/plus.ts @@ -1,10 +1,7 @@ -import { initPushRoute } from './route' - // @ts-expect-error uni.invokePushCallback({ type: 'enabled', }) -initPushRoute() Promise.resolve().then(() => { plus.push.setAutoNotification && plus.push.setAutoNotification(false) const info = plus.push.getClientInfo() diff --git a/packages/uni-push/src/route.ts b/packages/uni-push/src/route.ts index fab50df37..93478bb43 100644 --- a/packages/uni-push/src/route.ts +++ b/packages/uni-push/src/route.ts @@ -7,41 +7,23 @@ interface OnPushMessageSuccess { forceNotification?: boolean path?: string } - stopped?: boolean } export function initPushRoute() { // @ts-expect-error uni.onPushMessage((res: OnPushMessageSuccess) => { - if (res.data && res.data.path) { - if (res.type === 'click') { - const url = res.data.path - // 优先使用 navigateTo - uni.navigateTo({ - url, - fail(result) { - // 说明是 tabBar 页面,必须使用 switchTab - if (result.errMsg.indexOf('tabbar')) { - uni.switchTab({ - url, - }) - } - }, - }) - } else if (res.type === 'receive') { - // 仅 App 端 - if (typeof plus !== 'undefined' && plus.push) { - // 创建通知栏,并屏蔽消息的继续传递 - plus.push.createMessage( - res.data.content, - JSON.stringify(res.data.payload), - { - title: res.data.title, - path: res.data.path, - } as any - ) - // 内部属性,停止传播 - res.stopped = true - } + if (res.data && res.data.path && res.type === 'receive') { + // 仅 App 端 + if (typeof plus !== 'undefined' && plus.push) { + // 创建通知栏,并屏蔽消息的继续传递 + plus.push.createMessage( + res.data.content, + JSON.stringify(res.data.payload), + { + title: res.data.title, + forceNotification: true, + path: res.data.path, + } as any + ) } } }) diff --git a/packages/uni-quickapp-webview/dist/uni.api.esm.js b/packages/uni-quickapp-webview/dist/uni.api.esm.js index 25bcba0bc..accce9ba6 100644 --- a/packages/uni-quickapp-webview/dist/uni.api.esm.js +++ b/packages/uni-quickapp-webview/dist/uni.api.esm.js @@ -671,17 +671,12 @@ function invokePushCallback(args) { invokeGetPushCidCallbacks(cid, args.errMsg); } else if (args.type === 'pushMsg') { - for (let i = 0; i < onPushMessageCallbacks.length; i++) { - const msg = { + onPushMessageCallbacks.forEach((callback) => { + callback({ type: 'receive', data: normalizePushMessage(args.message), - }; - onPushMessageCallbacks[i](msg); - if (msg.stopped) { - // 消息被中断,比如页面直达的 push 信息 - break; - } - } + }); + }); } else if (args.type === 'click') { onPushMessageCallbacks.forEach((callback) => { -- GitLab