portals的使用场景不是很理解
来源:7-18 什么场景需要用React Portals

慕丝1117639
2022-03-16
问题一:请问为什么一定需要设置了postion:fixed的组件,就需要在body的第一层呢?如果不这样做,会造成什么影响?做了有什么优化呢
问题二:在父组件的中子组件想要渲染出来,为什么不将子组件定义在父组件的上层组件中。
问题三:能不能将一个实际的例子,什么情况下下会使用portals。视频里讲的: 父组件设置了overflow:hidden;父组件的z-index太小,设置了fixed元素,这三种情况下可能会使用,但是想象不到这种场景,能不能大概描述一下场景。直接抛出三种情况,有点接受不了。谢谢
写回答
3回答
-
双越
2022-03-17
例如全局的蒙层、弹框,这些如果在子组件的内部,其实并不合理,使用 Portals 移动到 body 下,就很合理了。
10 -
薛定谔的猫11
2024-03-17
其实可以类比下antd 的Modal组件使用场景,Modal组件就是用react的portals实现的
00 -
要啥要啥自行车
2022-06-29
我看了 Vue3 里 teleport 的文档,可能会对你有所帮助
有时组件模板的一部分逻辑上属于该组件,而从技术角度来看,最好将模板的这一部分移动到 DOM 中 Vue app 之外的其他位置。
一个常见的场景是创建一个包含全屏模式的组件。在大多数情况下,你希望模态框的逻辑存在于组件中,但是模态框的快速定位就很难通过 CSS 来解决,或者需要更改组件组合。
00
相似问题