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 the problem that the Slider's Tooltip is in the incorrect position when use modal #16717

Merged
merged 8 commits into from May 26, 2019

Conversation

Projects
None yet
5 participants
@ztplz
Copy link
Collaborator

commented May 21, 2019

🤔 This is a ...

  • New feature
  • Bug fix
  • Site / document update
  • Component style update
  • TypeScript definition update
  • Refactoring
  • Code style optimization
  • Test Case
  • Branch merge
  • Other (about what?)

👻 What's the background?

close #13416
close #13418
close #16669

💡 Solution

📝 Changelog

Language Changelog
🇺🇸 English
Fix the problem that the Slider's Tooltip is in the incorrect position when use modal
🇨🇳 Chinese
修复在使用Slider的时候设置了tooltipVisible显示 但是切换了tab后tooltip的定位会错乱的问题

☑️ Self Check before Merge

  • Doc is updated/provided or not needed
  • Demo is updated/provided or not needed
  • TypeScript definition is updated/provided or not needed
  • Changelog is provided or not needed

@pr-triage pr-triage bot added the PR: unreviewed label May 21, 2019

@ztplz

This comment has been minimized.

Copy link
Collaborator Author

commented May 21, 2019

ref: #16669

@ztplz ztplz requested review from afc163 and zombieJ May 21, 2019

@ztplz ztplz changed the title Slider Fix the problem that the Slider's Tooltip is in the incorrect position when use modal May 21, 2019

@netlify

This comment has been minimized.

Copy link

commented May 21, 2019

Deploy preview for ant-design ready!

Built with commit 951b03f

https://deploy-preview-16717--ant-design.netlify.com

@codecov

This comment has been minimized.

Copy link

commented May 21, 2019

Codecov Report

Merging #16717 into master will decrease coverage by 0.05%.
The diff coverage is 50%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master   #16717      +/-   ##
==========================================
- Coverage   95.75%    95.7%   -0.06%     
==========================================
  Files         258      258              
  Lines        7140     7142       +2     
  Branches     1974     1999      +25     
==========================================
- Hits         6837     6835       -2     
- Misses        301      305       +4     
  Partials        2        2
Impacted Files Coverage Δ
components/slider/index.tsx 86.48% <50%> (-2.09%) ⬇️
components/_util/wave.tsx 85.84% <0%> (-2.84%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 55bd82d...4f05552. Read the comment docs.

@codecov

This comment has been minimized.

Copy link

commented May 21, 2019

Codecov Report

Merging #16717 into master will increase coverage by <.01%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master   #16717      +/-   ##
==========================================
+ Coverage   95.75%   95.75%   +<.01%     
==========================================
  Files         258      258              
  Lines        7140     7141       +1     
  Branches     1974     1974              
==========================================
+ Hits         6837     6838       +1     
  Misses        301      301              
  Partials        2        2
Impacted Files Coverage Δ
components/slider/index.tsx 88.88% <100%> (+0.31%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 55bd82d...951b03f. Read the comment docs.

@@ -94,10 +97,12 @@ export default class Slider extends React.Component<SliderProps, SliderState> {
placement="top"
transitionName="zoom-down"
key={index}
getPopupContainer={() => (this.tooltipRef ? this.tooltipRef.current.handle : document.body)}

This comment has been minimized.

Copy link
@zombieJ

zombieJ May 22, 2019

Member

默认还是应该放在 body 里的,加个 getTooltipPopupContainer 属性让用户自己修改吧~

This comment has been minimized.

Copy link
@ztplz

ztplz May 22, 2019

Author Collaborator

不用啊 这是特殊场景 应该放在handle这里的 我这里函数没有必要 直接三目就好了

This comment has been minimized.

Copy link
@yoyo837

yoyo837 May 23, 2019

Contributor

https://github.com/react-component/* 那一套没点时间真的不熟悉 🙃

This comment has been minimized.

Copy link
@zombieJ

zombieJ May 23, 2019

Member

popup 放在外面是为了防止样式污染,以及外部容器如果用了 overflow: hidden 显示不全。

This comment has been minimized.

Copy link
@ztplz

ztplz May 23, 2019

Author Collaborator

那要写个example啊 不然用户要看代码才能知道那个ref是什么

ztplz added some commits May 23, 2019

@yoyo837

This comment has been minimized.

Copy link
Contributor

commented on components/slider/index.tsx in 133e431 May 23, 2019

trigger 上 getPopupContainer 要求 PropTypes.func哒!?

ztplz added some commits May 23, 2019

@ztplz

This comment has been minimized.

Copy link
Collaborator Author

commented May 23, 2019

@zombieJ 用户要么加个元素挂上去 要么就挂在slider的ref上 这个要看代码的 我把slider的ref public了

@@ -48,6 +48,7 @@ export interface SliderProps {
id?: string;
style?: React.CSSProperties;
tooltipVisible?: boolean;
getTooltipPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;

This comment has been minimized.

Copy link
@afc163

afc163 May 23, 2019

Member

加到 rc-slider 里去吧,那里也有类似的问题。

react-component/slider#564
react-component/slider#374

This comment has been minimized.

Copy link
@ztplz

ztplz May 23, 2019

Author Collaborator

rc-slider怎么有一个createSliderWithTooltip

This comment has been minimized.

Copy link
@zombieJ

zombieJ May 23, 2019

Member

这个 Tooltip 是包裹 Slider Handle 出来的,不是 rc-slider 的 bug。这个 PR 合进去后,指引过来就行了。

This comment has been minimized.

Copy link
@ztplz

ztplz May 23, 2019

Author Collaborator

这边怎么没复用rc-slider那边

This comment has been minimized.

Copy link
@zombieJ

zombieJ May 23, 2019

Member

是挺神奇的,估计是用于包裹 antd 的 Tooltip 来统一样式。 @afc163 看看我猜的对不对……

@zombieJ

This comment has been minimized.

Copy link
Member

commented May 23, 2019

文档更新一下~

@ztplz

This comment has been minimized.

Copy link
Collaborator Author

commented May 24, 2019

@zombieJ 啥文档

@zombieJ

This comment has been minimized.

Copy link
Member

commented May 24, 2019

index.zh-CN.mdindex.en-US.md 加一下 getTooltipPopupContainer 哈~

@@ -31,6 +31,7 @@ title: Slider
| onAfterChange | 与 `onmouseup` 触发时机一致,把当前值作为参数传入。 | Function(value) | NOOP |
| onChange | 当 Slider 的值发生改变时,会触发 onChange 事件,并把改变后的值作为参数传入。 | Function(value) | NOOP |
| tooltipVisible | 值为`true`时,Tooltip 将会始终显示;否则始终不显示,哪怕在拖拽及移入时。 | Boolean | |
| getTooltipPopupContainer | 浮层渲染父节点,默认渲染到 body 上。 | Function | () => document.body |

This comment has been minimized.

Copy link
@afc163

afc163 May 24, 2019

Member

要写清楚是 Tooltip 的渲染节点。

This comment has been minimized.

Copy link
@ztplz

ztplz May 24, 2019

Author Collaborator

这个从其他组件copy过来的 忘记改了

@ztplz

This comment has been minimized.

Copy link
Collaborator Author

commented May 24, 2019

ci挂了?

@zombieJ

This comment has been minimized.

Copy link
Member

commented May 26, 2019

feature branch

@afc163 afc163 referenced this pull request May 26, 2019

Merged

docs: 3.19.0 changelog #16796

1 of 10 tasks complete

@zombieJ zombieJ merged commit 9793e30 into ant-design:master May 26, 2019

20 of 27 checks passed

ant-design.ant-design #ant design failed
Details
ci/circleci: test_dom Your tests failed on CircleCI
Details
ci/circleci: test_es Your tests failed on CircleCI
Details
ci/circleci: test_lib Your tests failed on CircleCI
Details
Semantic Pull Request add a semantic commit or PR title
Details
Header rules No header rules processed
Details
Pages changed 213 new files uploaded
Details
CodeFactor No issues found.
Details
DEP All dependencies are resolved
LGTM analysis: JavaScript No new or fixed alerts
Details
Mixed content No mixed content detected
Details
Redirect rules 18 redirect rules processed
Details
WIP Ready for review
Details
buildsize No significant change
Details
ci/circleci: compile Your tests passed on CircleCI!
Details
ci/circleci: dist Your tests passed on CircleCI!
Details
ci/circleci: lint Your tests passed on CircleCI!
Details
ci/circleci: setup Your tests passed on CircleCI!
Details
ci/circleci: test_dist Your tests passed on CircleCI!
Details
ci/circleci: test_dist_15 Your tests passed on CircleCI!
Details
ci/circleci: test_dom_15 Your tests passed on CircleCI!
Details
ci/circleci: test_es_15 Your tests passed on CircleCI!
Details
ci/circleci: test_lib_15 Your tests passed on CircleCI!
Details
ci/circleci: test_node Your tests passed on CircleCI!
Details
ci/circleci: test_node_15 Your tests passed on CircleCI!
Details
deploy/netlify Deploy preview ready!
Details
security/snyk - package.json (paranoidjk) No new issues
Details

@pr-triage pr-triage bot removed the PR: unreviewed label May 26, 2019

@pr-triage pr-triage bot added the PR: merged label May 26, 2019

@ztplz ztplz deleted the ztplz:slider branch May 27, 2019

@HuaileiW

This comment has been minimized.

Copy link

commented Jun 4, 2019

想知道为什么在tooltipVisible=true的情况下 会挂在body上? 如果不放在body上 是不是就不需要getTooltipPopupContainer这个了。

@zombieJ

This comment has been minimized.

Copy link
Member

commented Jun 4, 2019

默认 popup 都在 body 上,是为了防止样式影响以及如果父容器有 overflow: hidden 后导致popup 展示不全的问题。

Kiku-git added a commit to Kiku-git/ant-design that referenced this pull request Jun 14, 2019

fix (#3)
* Add fault-tolerant processing for rowSelection.getCheckboxProps

* Upload prop onRemove: allow Promise as return type

* onDragEnter的函数定义缺少一个expandedKeys:string[]?

官方的示例里有expandedKeys, 可是typescript定义里没有,所以扩展一下

* Fix docs (ant-design#16637)

* Format (ant-design#16639)

* `==` to `===`

close ant-design#16640

* fix close  animation

* Update drawer.less

* fix space missing in button (ant-design#16551)

* feat: Add Mentions component (ant-design#16532)

* init

* first demo

* support empty

* add loading support

* add form sample

* update form sample

* omit value & defaultValue

* add 2 rest demo

* placement support

* update docs

* fix test

* update docs

* add test case

* fix lint

* follow textarea style

* update docs style

* 💄 unified Cascader selected style with Select

* docs: Add the changelog of 3.18.2 (ant-design#16666)

* Bump 3.18.2

* fix form typescript doc

* prettier md files

* Fix stylelint errors

* Add renovate.json

* Update renovate.json

* Refined translation of St.Exupery quote 

including link to quote site

* fix horizontal divider style

* 🆙 support ESC to close drawer

*  update snapshots

* 💄 improve code style of Drawer

* update drawer version

* update config-provider test

* fix shouldComponentUpdate

* Upload prop onRemove: fix action

https://github.com/react-component/upload/tree/d0cf0eecee3b31888791f8c57acddb575bd259d4#api

* Update dependency logrocket to v1

* 💄 chore some documents style

* 📝 update customize theme

* 🆙 rc-drawer 1.9.3

* 🎬 Add example for Select ``optionLabelProp` prop, ant-design#16709

*  update snapshots

* 💄 fix emoji lint problem

https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/accessible-emoji.md

* New component Descriptions (ant-design#14645)

* add new component: DescriptionList

* add warning message

* docs: fix doc typo

* feat: implement the size attribute

* docs: fix doc typo

* refactor: use new name Descriptions

* test: snapshots updated

* feat: support react15

* style: fix code style warring

* style: better var name

* style: better code style

* style: merge css class

* feat: add responsive config

* fix: fix error title

* style: use @border-radius-base

* update snapshot

* feat: set default column

* test: add test script

* style: fix property defaultProps is useless error

* style: more robust code

* style: fix codereview warning

* style: fix review warning

* use responsiveObserveserve

* fix review warning

* bug: add childrenArray copy,prevent changes to incoming parameters

* fix dom error

* fix typo

* fix test

* don't use this

* snapshot updated

* prettier md

* remove descriptions md text

* new rendering method

* doc :add dot

* style: add right border

* Update index.en-US.md

add missing prop `showTitle` in documentation of Pagination

* adjust Carousel children change goto Logic (ant-design#16756)

* 📝 Add Programmatic Usage of antd colors

* update preview demo

* 🐛 Fix Cascader displayRender not interactive

close ant-design#16738 and ant-design#10433

this bug had been fixed in bc4143f before, but it was broken by ant-design#12407

here we change another method to fix ant-design#12395

* Create FUNDING.yml

* 📝 Add opencollective link

* upload disabled remove

* feat: Steps support clickable (ant-design#16773)

* support clickable

* update snapshot

* update desc

* Locale (feat ant-design#16752): Added Latvian localization (ant-design#16780)

* update getPopupContainer (ant-design#16778)

since select/index.d.ts requires getPopupContainer={triggerNode => HTMLElement} but parentNode actually is not HTMLElement.

* Remove ancient prop types (ant-design#16705)

* Remove ancient Modal.propTypes.align and Progress.propTypes.size

* Remove linkRender and nameRender from Breadcrumb

* 🐛 Fix Input parser type

close ant-design#15226

* feat: New calendar apis, headerRender method (ant-design#16535)

* added new calendar api, renderHeader now we can customize calendar header

* fixed typo for tests

* error handling for renderHeader

* covering all cases with tests

* fixed tests and change console error to warning

* fixed feedbacks and code optimization

* cleanup callback function arguments

* removed unused changes

* fixed tests

* added extra classes

* fixed some comments

* tying to fix test for remote

* tying to fix test for remote in my local machin it works fine

* tying to fix test for remote in my local machin it works fine

* tying to fix test for remote in my local machin it works fine

* updated test snapshots

* fixed comment

* fixed linting

* fixed some texts

* added header for CN and added argument types

* removed extra row

* Allow users to define where tooltips should appear on slider marks (ant-design#16641)

* feat: add disable style to upload component

* Fix the problem that the Slider's Tooltip is in the incorrect position when use modal	 (ant-design#16717)

* Fix incorrect position of tooltip when use slider

* Remove useless comment

* Reduce code

* Update

*  getTooltipPopupContainer default to body

* Public Slider's ref

* Add docs

* Update docs

* 💄 Correct Statistic font color (ant-design#16801)

close ant-design#15514

* docs: 3.19.0 changelog (ant-design#16796)

* add changelog

* add ant-design#16535

* update

* add missing changelog

* add ant-design#16801 changelog

* adjust description

* more desc

* more info

* change logo

* fix: mentions ts definition update (ant-design#16814)

* fix mentions ts definition

* adjust logic of Mentions

* fix: Tooltip not hidden when menu is in control mode (ant-design#16812)

* fix: Select ts define (ant-design#16817)

* fix: Descriptions warning should work as expect (ant-design#16819)

* fix warning

* add MockDate

* Fix typescript compile error (ant-design#16816)

* 🐛 Fix typo name icons, add warning and update docs (ant-design#16818)

close ant-design#13007
close ant-design#16810

deps: ant-design/ant-design-icons#63

* docs: 3.19.1 change-log (ant-design#16820)

* update changelog

* add missing one

*  Add test case for TransButton

* fix: Tabs card vertical support scroll (ant-design#16825)

* Update util.test.js

* fix(Transfer): set state on an unmounted component (ant-design#16822)

* chore: Add warning if use `inlineCollapsed` under Sider (ant-design#16826)

* typescript: adding forceSubmenuRender as MenuProps

* 💄 Optimize examples code style

* Update index.en-US.md

* ⚡️ export TypographyProps

close ant-design#15190

* add onChange prop type definition to Steps

* add onChange prop type definition to Steps (ant-design#16845)

* add semicolon

* fix: add webkitRelativePath (ant-design#16850)

* fix: fix type of RcFile

* fix: fix type of action in UploadProps

* Update xhr2 requirement from ^0.1.4 to ^0.2.0

Updates the requirements on [xhr2](https://github.com/pwnall/node-xhr2) to permit the latest version.
- [Release notes](https://github.com/pwnall/node-xhr2/releases)
- [Commits](pwnall/node-xhr2@v0.1.4...0.2.0)

* Remove okButtonDisabled/cancelButtonDisabled never used prop defs

- Also remove them from the CHANGELOG because they were never actually
implemented, the prop was renamed to okButtonProps/cancelButtonProps
within PR ant-design#10955 but these prop defs were left behind and ended up
incorrectly included in the CHANGELOG.

* 修复Breadcrumb.tsx 中处理route.children 路径不对

<Menu.Item key={child.breadcrumbName || child.path}>
                {itemRender(child, params, routes, [...paths, this.getPath(child.path, params)])}
</Menu.Item>
itemRender(...args) 中路径应该到拼接当前child.path

* fix Breadcrumb.tsx

getPath() 参数赋默认值

* fix: use @error-color & @warning-color instead of @text-color-danger & @text-color-warning ant-design#16856

* fix Breadcrumb.tsx

对于子路径是否为空进行判断

* add antd pro 4.0 badge (ant-design#16894)

* Update ansi-styles requirement from ^3.2.1 to ^4.0.0

Updates the requirements on [ansi-styles](https://github.com/chalk/ansi-styles) to permit the latest version.
- [Release notes](https://github.com/chalk/ansi-styles/releases)
- [Commits](chalk/ansi-styles@v3.2.1...v4.0.0)

* doc: changelog 3.19.2

* doc: changelog

* tweak: order changelog

* doc: changelog

* doc: changelog

* doc: changelog

* doc: changelog

* doc: format

* doc: changelog

* 📝 changelog

* 📝 changelog

* release: 3.19.2

* 🐛 fixes ant-design#16871 Cascader - Space during search

* 🔧 Add packtracker

* Remove useless type

* fix: Transfer render Empty when customize without data (ant-design#16925)

* fix: Hide Spinner of InputNumber when type is number (ant-design#16926)

* fix: Hide Spinner of InputNumber when type is number

* Firefox not obedient

* fix: Breadcrumb validateDOMNesting warning (ant-design#16929)

* 🐛 Fix Breadcrumb validateDOMNesting warning

```
Warning: validateDOMNesting(...): <a> cannot appear as a descendant of <a>.
    in a (created by Context.Consumer)
    in span (created by Context.Consumer)
    in a (created by Context.Consumer)
    in Trigger (created by Dropdown)
    in Dropdown (created by Context.Consumer)
    in Dropdown (created by Context.Consumer)
    in span (created by Context.Consumer)
    in BreadcrumbItem (created by Context.Consumer)
    in div (created by Context.Consumer)
    in Breadcrumb (created by TestBreadcrumb)
    in TestBreadcrumb
```

*  update snapshots

* Update Breadcrumb.tsx

* 🐛 Fix abnormal scrollbar in Chrome

when rowSelection and title work together

close ant-design#16912

* 🐛 Fix Table header extra scrollbar control

close ant-design#4637
close ant-design#14211

react-component/table#333

*  update snapshots

* 💄 Fix scrollbar border bottom

*  update snapshots

* 📝 fix size toc overflow style

* 💄 use marginRight remind developer

* fix: test ci

* rebase

* fix: Table miss border-raidus in Firefox (ant-design#16957)

* Revert "Merge pull request ant-design#16174 from ant-design/fix-table-chrome"

This reverts commit 686c1fc, reversing
changes made to 924afc2.

* firefox only

* add comment

*  update snapshots

* 🆙 upgrade all deps to latest version

* 🆙 fix for typescript@3.5

* 🔧 ignore other files for packtracker

* Suppress autoprefixer warning

* add new less var

* less variable should be extended

*  Fix ci

* 📝 Add FAQ for DatePicker/RangePicker mode prop usage

* fix packtracker exclude_assets

* 🐛 Fix Divider `orientation="center"` style

close ant-design#16987

* Add missing spanish translations

* Export TextProps and update english in error

*  Fix test snapshots

* Fix typo

* Update colors.zh-CN.md

* docs: 3.19.3 change-log (ant-design#16998)

* chore: update package.json

* fix: Table with sort should reset to first page (ant-design#17020)

* sort reset pagination

* add test case

* 🐛 Fix margin issue of PageHeader extra

close ant-design#17025

* ⬆️ Update majo requirement from ^0.7.1 to ^0.8.0

Updates the requirements on [majo](https://github.com/egoist/majo) to permit the latest version.
- [Release notes](https://github.com/egoist/majo/releases)
- [Commits](egoist/majo@v0.7.1...v0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* 🐛 Fix margin issue of PageHeader extra continually

* update calendar (ant-design#17038)

* 💄 Keep submenu selected style

* Update index.less

* Update default.less

* Update certain-category.md

* Update uncertain-category.md

*  update snapshots

* 📝 Fix image in feedback spec documentation

*  update snapshots

* use calc to fix tree line (ant-design#17055)

* fix: add link button to basic demo of button docs

* 💄 adjust bordered table header scrollbar style

* 💄 optimize bordered table header scrollbar style

continue after ant-design#17065

* Fix grammar on message documentation

* fix: remove margin for collapse arrow (ant-design#17009)

* remove margin for collapse arrow

* change translateY to -21px in collapse

* remove line-height to center arrow

* Fixing date formats for Arabic-Egypt locale

* Update index.zh-CN.md

add getPopupContainer props

* 🐛 Fix Input not align with other components in Chrome

close ant-design#17082
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.