如何在 React 中获取嵌入式 Monaco 编辑器的行数? (包括包装)

How do I get the line count of an embedded Monaco editor in React? (including wrapping)

我想从 React 中的嵌入式 monaco 编辑器中提取行数,包括换行。这是一个虚拟设置:

import React, { useEffect, useState, useRef } from 'react';
import Editor from '@monaco-editor/react'; 


function ExampleApp() {
  const customHTMLRef = useRef(null);
  const [lineCount, setLineCount = useState();

  function handleHTMLEditorDidMount(editor, monaco) {
    customHTMLRef.current = editor;
  }
}

return (
  <>
    <Editor 
      theme='vs-dark'
      height='100%'
      width='100%'
      defaultLanguage='html'
      onMount={handleHTMLEditorDidMount}
    />
    <div>Line Count is: {lineCount}</div>
  </>
)

我使用的一些资源,也许你可以看到我没有使用的资源:

https://github.com/Microsoft/monaco-editor/issues/947

https://codepen.io/monir/pen/72958128d822b228ba0245b16171c293?editors=0010

实际上,他们似乎删除了使用换行检索行数的方法。但是您仍然可以使用 getLineCount() 方法计算行数。正如您在显示的第一个参考中看到的那样。示例 here.