如何使用 React 删除 ace 编辑器中所有现有的高亮标记

How to remove all the existing highlight markers in ace editor using react

我正在使用 ace 编辑器,我通过定义以下代码来突出显示行:

var Range = ace.require('ace/range').Range;
editor.session.addMarker(new Range(item - 1, 0, item - 1, 1), "warning-marker", "fullLine");

考虑到我没有任何标记 ID,现在我想删除我在编辑器中使用的所有标记。

这就是我最终解决问题的方法:

const prevMarkers = editor.session.getMarkers();
if (prevMarkers) {
  const prevMarkersArr = Object.keys(prevMarkers);
  for (let item of prevMarkersArr) {
    editor.session.removeMarker(prevMarkers[item].id);
  }
}