From e1cc1858d228d3664c665f2d328993e92e020482 Mon Sep 17 00:00:00 2001 From: Uyarn Date: Fri, 30 Sep 2022 18:14:04 +0800 Subject: [PATCH 1/2] fix(timepicker): prevent scroll after closing panel --- src/_common | 2 +- src/time-picker/panel/single-panel.tsx | 7 +++---- src/time-picker/panel/time-picker-panel.tsx | 1 + 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/_common b/src/_common index 1f72402e37..100e0e7773 160000 --- a/src/_common +++ b/src/_common @@ -1 +1 @@ -Subproject commit 1f72402e370737991c44c31993bec54f0ea5705d +Subproject commit 100e0e77736fa5d1692b985dd542b133b344995e diff --git a/src/time-picker/panel/single-panel.tsx b/src/time-picker/panel/single-panel.tsx index cbb8e5c345..0ddc714e54 100644 --- a/src/time-picker/panel/single-panel.tsx +++ b/src/time-picker/panel/single-panel.tsx @@ -34,6 +34,7 @@ export default defineComponent({ triggerScroll: Boolean, onChange: Function, resetTriggerScroll: Function, + isShowPanel: Boolean, }, setup(props) { @@ -174,6 +175,8 @@ export default defineComponent({ const handleScroll = (col: EPickerCols, idx: number) => { let val: number | string; let formattedVal: string; + if (!props.isShowPanel) return; + const scrollTop = (colsRef[idx]?.scrollTop || 0) + panelOffset.top; const { offsetHeight, margin } = getItemHeight(); const timeItemTotalHeight = offsetHeight + margin; @@ -323,10 +326,6 @@ export default defineComponent({ ref={(el) => (colsRef[idx] = el)} class={`${panelClassName.value}-body-scroll`} onScroll={debounce(() => handleScroll(col, idx), 50)} - style={{ - '--timePickerPanelOffsetTop': panelOffset.top, - '--timePickerPanelOffsetBottom': panelOffset.bottom, - }} > {getColList(col).map((el) => (
  • {isFooterDisplay.value ? ( From 182b64df6b1226de92f2b635ec58340400f6e54e Mon Sep 17 00:00:00 2001 From: pengYYY Date: Thu, 6 Oct 2022 14:52:33 +0800 Subject: [PATCH 2/2] test: snap update --- test/snap/__snapshots__/csr.test.js.snap | 3 --- test/snap/__snapshots__/ssr.test.js.snap | 4 ++-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/test/snap/__snapshots__/csr.test.js.snap b/test/snap/__snapshots__/csr.test.js.snap index bac9ccc0bb..ae65d63708 100644 --- a/test/snap/__snapshots__/csr.test.js.snap +++ b/test/snap/__snapshots__/csr.test.js.snap @@ -44876,7 +44876,6 @@ exports[`csr snapshot test > csr test ./src/date-picker/_example/panel.vue 1`] = disabled="false" isfocus="false" isfooterdisplay="false" - isshowpanel="false" >
    csr test ./src/date-picker/_example/panel.vue 1`] = disabled="false" isfocus="false" isfooterdisplay="false" - isshowpanel="false" >
    csr test ./src/time-picker/_example/panel.vue 1`] = disabled="false" isfocus="false" isfooterdisplay="false" - isshowpanel="false" >
    ssr test ./src/date-picker/_example/first-day-of-we exports[`ssr snapshot test > ssr test ./src/date-picker/_example/month.vue 1`] = `"
    "`; -exports[`ssr snapshot test > ssr test ./src/date-picker/_example/panel.vue 1`] = `"
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    00:00:00
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    00:00:00
    "`; +exports[`ssr snapshot test > ssr test ./src/date-picker/_example/panel.vue 1`] = `"
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    00:00:00
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    30
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    00:00:00
    "`; exports[`ssr snapshot test > ssr test ./src/date-picker/_example/quarter.vue 1`] = `"
    "`; @@ -1158,7 +1158,7 @@ exports[`ssr snapshot test > ssr test ./src/time-picker/_example/hms.vue 1`] = ` exports[`ssr snapshot test > ssr test ./src/time-picker/_example/keyboard.vue 1`] = `"

    允许输入

    禁止输入

    "`; -exports[`ssr snapshot test > ssr test ./src/time-picker/_example/panel.vue 1`] = `"
    "`; +exports[`ssr snapshot test > ssr test ./src/time-picker/_example/panel.vue 1`] = `"
    "`; exports[`ssr snapshot test > ssr test ./src/time-picker/_example/range.vue 1`] = `"
    -
    "`;