1
我想为我的编辑器添加一个叠加层,它只适用于给定的范围(例如,从第3行第44列到第8行第5列)。如何限制叠加到特定范围?
问题是我找不到任何方法来找到我的方法中的当前行,因为覆盖是无状态的,所以我不能将当前行存储在状态中。
我对multiplex.js
和overlay.js
的扩展进行了深入研究,并尝试了解嵌套模式如何工作,但我无法想出一种方法来使用这些工具来帮助我。请记住,我仍然希望这表现得像叠加层,因此不会干扰基本模式。
我的替代方案是扫描添加的类的元素并手动修改它们,使用element.getBoundingClientRect()
和cm.coorsChar()
来检查它们的位置。但是这很丑陋,需要手动刷新,并且当标记的元素跨越我的范围边界时导致错误。任何想法如何正确解决这个问题?