Editor 2自适应高度实现问题及代码合理性咨询
自适应编辑器高度实现疑问与代码合理性咨询
需求概述
- 为Editor 2实现自适应高度机制:核心是Editor 2在添加/移除Editor 1、窗口resize时自动占据页面剩余空间
- 初始状态仅显示Editor 2,点击“Click to toggle "Editor 1"”可切换Editor 1的显示/隐藏
- Editor 1的高度由
calculateNextHeightFirst方法计算,限制最小3行、最大10行,高度随内容动态调整 - 仅在添加Editor 1、窗口resize时触发Editor 2的高度重设,Editor 1内容变化无需触发Editor 2调整
当前实现问题
现有代码已满足上述需求,但存在一个硬性依赖:必须手动设置EditorPlus的初始height为72(与Editor 1的初始高度一致),否则点击切换Editor 1显示状态后,this.aRef.current.clientHeight无法正确获取值,进而导致Editor 2高度异常。
咨询问题
- 是否需要使用
getDerivedStateFromProps这类生命周期方法来优化当前实现? - 当前代码在事件处理、React Refs、React生命周期的使用上是否合理?
内容的提问来源于stack exchange,提问作者SoftTimur
相关产品推荐
相关产品推荐

