假设需要用react实现一个弹出层的组件,该如何实现。
可能会考虑这些事情:
- 如何传递参数
- 如何控制层级
- 在哪调用这个弹出层
- 将弹出层插入到body下还是当前DOM中
这些该如何考虑呢?有什么标准的实现方法?
如何控制层级
如何控制它的层级是在最上层。如果此时需要弹出多个弹出层,如何保证前一层没关闭的情形下一层一层叠加上去。
将弹出层渲染到body下还是当前dom下
貌似现在很多弹出层的做法通常不是渲染在当前的 DOM 树中,而是直接插入在 body 下。
假设需要用react实现一个弹出层的组件,该如何实现。
可能会考虑这些事情:
这些该如何考虑呢?有什么标准的实现方法?
如何控制它的层级是在最上层。如果此时需要弹出多个弹出层,如何保证前一层没关闭的情形下一层一层叠加上去。
貌似现在很多弹出层的做法通常不是渲染在当前的 DOM 树中,而是直接插入在 body 下。
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
React16的话用portal就可以解决你所有疑问。
1.和普通子组件一样传递参数
2.可以直接渲染到任意DOM下,所以层级可以任意控制
3.跟子组件一样渲染,所以可以哪里需要哪里引,也可以全局引一个
4.同2