如何计算monaco差异编辑器中已更改的行数?

问题描述 投票:0回答:1

我想在monaco差异编辑器中计算更改的行数。在“ Github”中看起来像什么,可以看到添加或删除了多少行。例如:https://microsoft.github.io/monaco-editor/playground.html#creating-the-diffeditor-navigating-a-diff我想显示删除2行,并添加2行。

谢谢。

javascript reactjs diff monaco-editor
1个回答
0
投票

您将需要使用编辑器功能getLineChanges()

// It will get all the changes including adds/removals and modified
diffEditor.getLineChanges(); 
console.log(diffEditor.getLineChanges());

/* It will return something like this:

(3) [{…}, {…}, {…}]
  0:
    charChanges: undefined
    modifiedEndLineNumber: 0
    modifiedStartLineNumber: 1
    originalEndLineNumber: 2
    originalStartLineNumber: 2
    __proto__: Object
  1:
    charChanges: Array(1)
      0:
        modifiedEndColumn: 5
        modifiedEndLineNumber: 7
        modifiedStartColumn: 1
        modifiedStartLineNumber: 7
        originalEndColumn: 0
        originalEndLineNumber: 0
        originalStartColumn: 0
        originalStartLineNumber: 0

*/

然后,您需要遍历它们以获取恢复分析数组和子对象的简历。

此处有更多信息:https://microsoft.github.io/monaco-editor/api/interfaces/monaco.editor.idiffeditor.html#getlinechanges

© www.soinside.com 2019 - 2024. All rights reserved.