diff --git a/packages/uni-components/src/components/scroll-view/index.tsx b/packages/uni-components/src/components/scroll-view/index.tsx index 745d6538f8a088aa0a4f8652c8ae8193b9f3b5bc..b04a734ca51c277cbc4f924cdf94413bd02d902c 100644 --- a/packages/uni-components/src/components/scroll-view/index.tsx +++ b/packages/uni-components/src/components/scroll-view/index.tsx @@ -121,26 +121,26 @@ export default /*#__PURE__*/ defineBuiltInComponent({ content ) + const mainStyle = computed(() => { + let style = '' + props.scrollX + ? (style += 'overflow-x:auto;') + : (style += 'overflow-x:hidden;') + props.scrollY + ? (style += 'overflow-y:auto;') + : (style += 'overflow-y:hidden;') + return style + }) + return () => { - const { - scrollX, - refresherEnabled, - refresherBackground, - refresherDefaultStyle, - } = props + const { refresherEnabled, refresherBackground, refresherDefaultStyle } = + props const { refresherHeight, refreshState, refreshRotate } = state return (
-
+
{refresherEnabled ? (
{ + let style = ""; + props2.scrollX ? style += "overflow-x:auto;" : style += "overflow-x:hidden;"; + props2.scrollY ? style += "overflow-y:auto;" : style += "overflow-y:hidden;"; + return style; + }); return () => { const { - scrollX, refresherEnabled, refresherBackground, refresherDefaultStyle @@ -5837,10 +5842,7 @@ var index$h = /* @__PURE__ */ defineBuiltInComponent({ "class": "uni-scroll-view" }, [vue.createVNode("div", { "ref": main, - "style": { - overflowX: scrollX ? "auto" : "hidden", - overflowY: scrollY ? "auto" : "hidden" - }, + "style": mainStyle.value, "class": "uni-scroll-view" }, [vue.createVNode("div", { "ref": content, diff --git a/packages/uni-h5/dist/uni-h5.es.js b/packages/uni-h5/dist/uni-h5.es.js index 8da548da636c8977ce8c3b7ae5f9bf2a744d0a5b..b145a4eba8734867f9c05ff919596bb9702e9623 100644 --- a/packages/uni-h5/dist/uni-h5.es.js +++ b/packages/uni-h5/dist/uni-h5.es.js @@ -606,8 +606,8 @@ function createScrollListener({ const isReachBottom = () => { const {scrollHeight} = document.documentElement; const windowHeight = window.innerHeight; - const scrollY2 = window.scrollY; - const isBottom = scrollY2 > 0 && scrollHeight > windowHeight && scrollY2 + windowHeight + onReachBottomDistance >= scrollHeight; + const scrollY = window.scrollY; + const isBottom = scrollY > 0 && scrollHeight > windowHeight && scrollY + windowHeight + onReachBottomDistance >= scrollHeight; const heightChanged = Math.abs(scrollHeight - lastScrollHeight) > onReachBottomDistance; if (isBottom && (!hasReachBottom || heightChanged)) { lastScrollHeight = scrollHeight; @@ -7934,9 +7934,14 @@ var ScrollView = /* @__PURE__ */ defineBuiltInComponent({ scrollLeftNumber } = useScrollViewState(props2); useScrollViewLoader(props2, state2, scrollTopNumber, scrollLeftNumber, trigger, rootRef, main, content); + const mainStyle = computed(() => { + let style = ""; + props2.scrollX ? style += "overflow-x:auto;" : style += "overflow-x:hidden;"; + props2.scrollY ? style += "overflow-y:auto;" : style += "overflow-y:hidden;"; + return style; + }); return () => { const { - scrollX, refresherEnabled, refresherBackground, refresherDefaultStyle @@ -7953,10 +7958,7 @@ var ScrollView = /* @__PURE__ */ defineBuiltInComponent({ "class": "uni-scroll-view" }, [createVNode("div", { "ref": main, - "style": { - overflowX: scrollX ? "auto" : "hidden", - overflowY: scrollY ? "auto" : "hidden" - }, + "style": mainStyle.value, "class": "uni-scroll-view" }, [createVNode("div", { "ref": content,