From 689eec085f2c3a56859cdb2caaf60bbb67cfea93 Mon Sep 17 00:00:00 2001 From: iqudoo Date: Fri, 26 Jun 2026 21:52:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=AB=E4=B8=80=E6=89=AB=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/index.d.ts | 4 + dist/index.js | 2 +- src/_core.js | 61 ++++++++++--- src/services/provider/scan.js | 12 ++- src/services/sdkLifecycle.js | 59 +++++++++++++ src/services/wx/index.js | 160 +++++++++++++++++++++++----------- types/index.d.ts | 4 + 7 files changed, 233 insertions(+), 69 deletions(-) create mode 100644 src/services/sdkLifecycle.js diff --git a/dist/index.d.ts b/dist/index.d.ts index 18d9027..6257525 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -22,6 +22,10 @@ interface ScanConfigOptions { * 页面 URL 变化后是否自动重新初始化微信 JSSDK(默认 true,避免扫一扫失效) */ wxJssdkAutoReinitOnUrlChange?: boolean, + /** + * URL 轮询检测间隔(毫秒),用于捕获未走 history API 的 SPA 路由;默认 1000,设为 0 关闭 + */ + wxJssdkUrlPollInterval?: number, /** * 桥接是否启用,默认启用 */ diff --git a/dist/index.js b/dist/index.js index 31f4256..e2c9a13 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1 +1 @@ -!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=28)}([function(e,t,n){"use strict";t.__esModule=!0;var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.getVersion=function(){return o},t.getConfig=function(e){if(Object.prototype.hasOwnProperty.call(a,e))return a[e];if(Object.prototype.hasOwnProperty.call(i,e))return i[e];return},t.setConfig=function(e){e&&"object"==(void 0===e?"undefined":r(e))&&Object.assign(a,e)};var o="0.0.1.0617.2019",i={embedProxyMode:"auto"},a={}},function(e,t,n){"use strict";t.__esModule=!0;var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.toAny=function(e,t){if(null==e)return t;var n=function(e){if("string"!=typeof e)return void 0===e?"undefined":r(e);try{var t=JSON.parse(e);return void 0===t?"undefined":r(t)}catch(t){var n=parseFloat(e);return isNaN(n)||""+n!==e?"string":"number"}}(e);null!=t&&(n=void 0===t?"undefined":r(t));switch(n){case"number":return function(e){try{return JSON.parse(e)}catch(t){return parseFloat(e)}}(e);case"boolean":return function(e){return!!e&&"false"!=e&&"0"!=e}(e);case"object":return function(e,t){if("object"===(void 0===e?"undefined":r(e)))return e;try{return JSON.parse(e)}catch(e){}return t}(e,t);case"string":return function(e,t){try{var n=void 0===e?"undefined":r(e);if("string"===n)return e;if("boolean"===n)return e?"true":"false";if("number"===n)return""+e;if("object"===n)return JSON.stringify(e)}catch(e){}return t}(e,t)}return t}},function(e,t){let n;const r=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];t.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return 4*e+17},t.getSymbolTotalCodewords=function(e){return r[e]},t.getBCHDigit=function(e){let t=0;for(;0!==e;)t++,e>>>=1;return t},t.setToSJISFunction=function(e){if("function"!=typeof e)throw new Error('"toSJISFunc" is not a valid function.');n=e},t.isKanjiModeEnabled=function(){return void 0!==n},t.toSJIS=function(e){return n(e)}},function(e,t,n){const r=n(23),o=n(24);t.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},t.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},t.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},t.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},t.MIXED={bit:-1},t.getCharCountIndicator=function(e,t){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!r.isValid(t))throw new Error("Invalid version: "+t);return t>=1&&t<10?e.ccBits[0]:t<27?e.ccBits[1]:e.ccBits[2]},t.getBestModeForData=function(e){return o.testNumeric(e)?t.NUMERIC:o.testAlphanumeric(e)?t.ALPHANUMERIC:o.testKanji(e)?t.KANJI:t.BYTE},t.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")},t.isValid=function(e){return e&&e.bit&&e.ccBits},t.from=function(e,n){if(t.isValid(e))return e;try{return function(e){if("string"!=typeof e)throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return t.NUMERIC;case"alphanumeric":return t.ALPHANUMERIC;case"kanji":return t.KANJI;case"byte":return t.BYTE;default:throw new Error("Unknown mode: "+e)}}(e)}catch(e){return n}}},function(e,t,n){"use strict";t.__esModule=!0,t.printError=function(e){for(var t,n=arguments.length,r=Array(n>1?n-1:0),o=1;o1?n-1:0),o=1;o1?n-1:0),o=1;o