diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/babel.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/babel.spec.ts.snap index 2d8cecc2c6a7..73792529f533 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/babel.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/babel.spec.ts.snap @@ -3586,14 +3586,16 @@ exports[`babel should convert do expressions 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3606,7 +3608,7 @@ exports[`babel should convert do expressions 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/compiler-macros.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/compiler-macros.spec.ts.snap index ce7888e91fef..01462c735d0a 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/compiler-macros.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/compiler-macros.spec.ts.snap @@ -3581,14 +3581,16 @@ exports[`compiler-macros - defineAppConfig and definePageConfig should read app }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3601,7 +3603,7 @@ exports[`compiler-macros - defineAppConfig and definePageConfig should read app page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/config.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/config.spec.ts.snap index c82791968e47..e7ae3cfe7732 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/config.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/config.spec.ts.snap @@ -3593,14 +3593,16 @@ exports[`config should build from origin and pipe to output 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3613,7 +3615,7 @@ exports[`config should build from origin and pipe to output 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -8364,14 +8366,16 @@ I m irrelevant. }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -8384,7 +8388,7 @@ I m irrelevant. page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -13135,14 +13139,16 @@ exports[`config should resolved alias 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -13155,7 +13161,7 @@ exports[`config should resolved alias 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/css-modules.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/css-modules.spec.ts.snap index e96a2e84682b..266ca8d6739d 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/css-modules.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/css-modules.spec.ts.snap @@ -3610,14 +3610,16 @@ exports[`css modules should use css modules with global mode 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3630,7 +3632,7 @@ exports[`css modules should use css modules with global mode 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -8390,14 +8392,16 @@ exports[`css modules should use css modules with module mode 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -8410,7 +8414,7 @@ exports[`css modules should use css modules with module mode 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/nerv.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/nerv.spec.ts.snap index 1b258199ddd6..422dd5c8b061 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/nerv.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/nerv.spec.ts.snap @@ -3592,14 +3592,16 @@ exports[`nerv should build nerv app 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3612,7 +3614,7 @@ exports[`nerv should build nerv app 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/react.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/react.spec.ts.snap index 702ed74cdc34..c747cabe677d 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/react.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/react.spec.ts.snap @@ -3593,14 +3593,16 @@ exports[`react should build react app 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3613,7 +3615,7 @@ exports[`react should build react app 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/sass.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/sass.spec.ts.snap index 375e289c3f06..9506ad1a6637 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/sass.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/sass.spec.ts.snap @@ -3578,14 +3578,16 @@ exports[`sass should build app with sass 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3598,7 +3600,7 @@ exports[`sass should build app with sass 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -8335,14 +8337,16 @@ exports[`sass should build app with scss 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -8355,7 +8359,7 @@ exports[`sass should build app with scss 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -13102,14 +13106,16 @@ exports[`sass should set global sass content with data 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -13122,7 +13128,7 @@ exports[`sass should set global sass content with data 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -17869,14 +17875,16 @@ exports[`sass should set global sass content with source & dir 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -17889,7 +17897,7 @@ exports[`sass should set global sass content with source & dir 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { @@ -22636,14 +22644,16 @@ exports[`sass should set global sass content with source 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -22656,7 +22666,7 @@ exports[`sass should set global sass content with source 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/subpackages.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/subpackages.spec.ts.snap index be9da8724caa..0284123b8023 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/subpackages.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/subpackages.spec.ts.snap @@ -3656,14 +3656,16 @@ exports[`subpackages should process subpackages 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3676,7 +3678,7 @@ exports[`subpackages should process subpackages 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/ts.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/ts.spec.ts.snap index 3f8cfcab210a..ca5e0194d702 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/ts.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/ts.spec.ts.snap @@ -3596,14 +3596,16 @@ exports[`typescript should build project with ts 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3616,7 +3618,7 @@ exports[`typescript should build project with ts 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue.spec.ts.snap index b7823f4fcf48..296a725fee91 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue.spec.ts.snap @@ -3550,14 +3550,16 @@ exports[`vue should build vue app 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3570,7 +3572,7 @@ exports[`vue should build vue app 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) { diff --git a/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue3.spec.ts.snap b/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue3.spec.ts.snap index 6ea608b46fad..9af6703ed745 100644 --- a/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue3.spec.ts.snap +++ b/packages/taro-webpack-runner/src/__tests__/__snapshots__/vue3.spec.ts.snap @@ -3489,14 +3489,16 @@ exports[`vue3 should build vue3 app 2`] = ` }; window.addEventListener(\\"resize\\", pageResizeFn, false); } - var pageScrollFn; + var pageScrollFn = {}; var pageDOM = window; function bindPageScroll(page, pageEl) { var distance = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; - pageScrollFn && pageEl.removeEventListener(\\"scroll\\", pageScrollFn); + var _a; + var pagePath = page ? page === null || page === void 0 ? void 0 : page.path : (_a = undefined.router) === null || _a === void 0 ? void 0 : _a.path; + pageScrollFn[pagePath] && pageEl.removeEventListener(\\"scroll\\", pageScrollFn[pagePath]); pageDOM = pageEl; var isReachBottom = false; - pageScrollFn = function pageScrollFn() { + pageScrollFn[pagePath] = function() { var _a; (_a = page.onPageScroll) === null || _a === void 0 ? void 0 : _a.call(page, { \\"scrollTop\\": pageDOM instanceof Window ? window.scrollY : pageDOM.scrollTop @@ -3509,7 +3511,7 @@ exports[`vue3 should build vue3 app 2`] = ` page.onReachBottom(); } }; - pageDOM.addEventListener(\\"scroll\\", pageScrollFn, false); + pageDOM.addEventListener(\\"scroll\\", pageScrollFn[pagePath], false); } function getOffset() { if (pageDOM instanceof Window) {