据我所知,如果文件有很多行,codemirror 只会将几行渲染到 DOM 中。是否有任何变量或函数可以在渲染的 DOM 中为我提供开始和结束行号?
例如,如果我的文件中有 1000 行并且我在我的文件中间,代码镜像可能只将 400 到 500 行渲染到 DOM 中。我怎样才能得到那些开始和结束行号?
据我所知,如果文件有很多行,codemirror 只会将几行渲染到 DOM 中。是否有任何变量或函数可以在渲染的 DOM 中为我提供开始和结束行号?
例如,如果我的文件中有 1000 行并且我在我的文件中间,代码镜像可能只将 400 到 500 行渲染到 DOM 中。我怎样才能得到那些开始和结束行号?
可以通过调用获取可见区域的行号范围cm.getViewport()
。
从文档:
cm.getViewport()
→{from: number, to: number}
返回一个
{from, to}
对象,该对象指示文档当前呈现部分的开始(包括)和结束(不包括)。在大文档中,当大部分内容被滚动到视图之外时,CodeMirror 将只呈现可见部分,以及它周围的边距。另请参阅 viewportChange事件。