Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(component): 解决 preventDefault 引起的页面无法滚动的问题 #14987

Merged
merged 4 commits into from
Mar 14, 2024

Conversation

robinv8
Copy link
Member

@robinv8 robinv8 commented Dec 14, 2023

这个 PR 做了什么? (简要描述所做更改)
解决 MovableView 组件事件中使用 preventDefault 引起的页面无法滚动的问题

这个 PR 是什么类型? (至少选择一个)

这个 PR 涉及以下平台:

  • 所有小程序
  • 微信小程序
  • 支付宝小程序
  • 百度小程序
  • 字节跳动小程序
  • QQ 轻应用
  • 京东小程序
  • 快应用平台(QuickApp)
  • Web 平台(H5)
  • 移动端(React-Native)
  • 鸿蒙(harmony)

@@ -404,7 +404,6 @@ export class MovableView {
if (this.disabled || !this.element || this.scaling || !this.touching || touches.length > 1) {
return
}
e.preventDefault()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这应该就是 movable 组件的特性?小程序上体验会和这个有区别么?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

直接去掉应该会有些问题,在moveable设置为垂直或全向滑动的时候,与外部的垂直滚动也会有冲突;如果判断出仅在内外部进行同方向滚动时,再禁止事件冒泡是否可以

Copy link
Member Author

@robinv8 robinv8 Dec 19, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这样是否可行

if (direction !== "horizontal") {
    e.preventDefault()
}

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

没太看懂,是不是这个意思
if (("水平滑动开启" && "水平方向发生移动") || ("垂直滑动开启" && "垂直方向发生移动")) {
e.preventDefault()
}

Copy link
Member Author

@robinv8 robinv8 Dec 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@baosiqing 不好意思,手误了,已更正。常规情况下垂直滑动存在冲突的情况,我只期望当 direction = horizontal 时,跳过 e.preventDefault() 允许冒泡

@ZakaryCode ZakaryCode added A-components Area - H5 组件库相关 T-h5 Target - 编译到 H5 labels Dec 21, 2023
Copy link

codecov bot commented Dec 26, 2023

Codecov Report

Attention: Patch coverage is 0% with 2 lines in your changes are missing coverage. Please review.

Project coverage is 58.67%. Comparing base (489208e) to head (0ed5881).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main   #14987      +/-   ##
==========================================
- Coverage   58.67%   58.67%   -0.01%     
==========================================
  Files         489      489              
  Lines       21829    21830       +1     
  Branches     5611     5612       +1     
==========================================
  Hits        12809    12809              
+ Misses       7860     7841      -19     
- Partials     1160     1180      +20     
Flag Coverage Δ
taro-cli 63.29% <ø> (+5.92%) ⬆️
taro-runner 46.21% <ø> (ø)
taro-runtime 65.35% <ø> (+7.98%) ⬆️
taro-web 40.61% <0.00%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...nents/src/components/movable-area/movable-view.tsx 51.19% <0.00%> (-0.25%) ⬇️

... and 11 files with indirect coverage changes

@Chen-jj Chen-jj added this to the 3.6.25 milestone Mar 13, 2024
@ZEJIA-LIU ZEJIA-LIU merged commit f080a07 into main Mar 14, 2024
24 of 27 checks passed
@ZEJIA-LIU ZEJIA-LIU deleted the fix/MovableView branch March 14, 2024 08:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-components Area - H5 组件库相关 T-h5 Target - 编译到 H5
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants