https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-d12uv8?file=/demo.tsx
Drawer 打开后,页面还是能滚动。期待应该是无法滚动。
对比一下没有 getPopupContainer 的效果: https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-49f0q6?file=/demo.tsx
https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-d12uv8?file=/demo.tsx
Drawer 打开后,页面还是能滚动。期待应该是无法滚动。
对比一下没有 getPopupContainer 的效果: https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-49f0q6?file=/demo.tsx
7条答案
按热度按时间mkh04yzy1#
@afc163
容器的高度是不是不对?
https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-ddoe31?file=/demo.tsx
5w9g7ksd2#
div 里设置这个高度就是模拟页面内容比较多,会出现滚动条的情况。
z9smfwbn3#
找到原因了
加上 container 之后 body上的 overflow-y:hidden 丢失了
我尝试修复一下
t40tm48m4#
指路: https://github.com/react-component/util/blob/master/src/Dom/scrollLocker.ts
pkbketx95#
getContainer
之后可能是容器内展开,锁了就不对了。需要慎重一些:https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-pbqrom?file=/demo.tsx
wz3gfoph6#
https://codesandbox.io/s/ji-chu-chou-ti-antd-5-5-2-forked-d12uv8?file=/demo.tsx 里这种情况就不是在容器内展开的,得区分出来,不然对用户来说体验是有问题的。
46scxncf7#
解法:react-component/portal@08df278#r116024280