From d60096aff20d50e980d23ac770158ee877fb6f59 Mon Sep 17 00:00:00 2001 From: neverland Date: Thu, 6 Oct 2022 16:07:12 +0800 Subject: [PATCH] fix(Tabs): scroll position when using nav-bottom slot (#11115) --- .../icon/test/__snapshots__/demo.spec.ts.snap | 104 +++--- .../tab/test/__snapshots__/demo.spec.ts.snap | 296 +++++++++--------- packages/vant/src/tabs/Tabs.tsx | 20 +- 3 files changed, 216 insertions(+), 204 deletions(-) diff --git a/packages/vant/src/icon/test/__snapshots__/demo.spec.ts.snap b/packages/vant/src/icon/test/__snapshots__/demo.spec.ts.snap index af32bbb56..7845bfbe5 100644 --- a/packages/vant/src/icon/test/__snapshots__/demo.spec.ts.snap +++ b/packages/vant/src/icon/test/__snapshots__/demo.spec.ts.snap @@ -4,58 +4,60 @@ exports[`should render demo and match snapshot 1`] = `
-
-
- - - - -
+
+
+ + + + +
+
diff --git a/packages/vant/src/tab/test/__snapshots__/demo.spec.ts.snap b/packages/vant/src/tab/test/__snapshots__/demo.spec.ts.snap index e07d81012..4d6653b39 100644 --- a/packages/vant/src/tab/test/__snapshots__/demo.spec.ts.snap +++ b/packages/vant/src/tab/test/__snapshots__/demo.spec.ts.snap @@ -546,58 +546,60 @@ exports[`should render demo and match snapshot 1`] = `
-
-
- - - - -
+
+
+ + + + +
+
@@ -1096,102 +1098,104 @@ exports[`should render demo and match snapshot 1`] = `
-
-
- - - - - - - - -
+
+
+ + + + + + + + +
+
diff --git a/packages/vant/src/tabs/Tabs.tsx b/packages/vant/src/tabs/Tabs.tsx index 5f20e1f67..f32cfc06b 100644 --- a/packages/vant/src/tabs/Tabs.tsx +++ b/packages/vant/src/tabs/Tabs.tsx @@ -384,10 +384,11 @@ export default defineComponent({ }; const renderHeader = () => { - const { type, border } = props; - return ( + const { type, border, sticky } = props; + + const Header = [
-
- ); +
, + slots['nav-bottom']?.(), + ]; + + if (sticky) { + return
{Header}
; + } + return Header; }; watch([() => props.color, windowWidth], setLine); @@ -486,10 +493,9 @@ export default defineComponent({ onScroll={onStickyScroll} > {renderHeader()} - {slots['nav-bottom']?.()} ) : ( - [renderHeader(), slots['nav-bottom']?.()] + renderHeader() )}