有没有办法将monaco编辑器与jshint linting工具集成?
我知道monaco提供了设置编译器选项的可能性,但它们对我来说还不够。例如,我想在语句结尾处要求分号,但无法找到方法。
好吧,我找到了一种方法,但我仍然在想是否有更好的方法。
基本上,我可以手动运行我的代码的JSHint分析。
jshint.JSHINT(this.code, options, predef)
然后根据结果我可以创建自定义模型标记。就像是:
let errors = jshint.JSHINT.data().errors.map(e => {
return {
startLineNumber: e.line,
startColumn: e.character,
endLineNumber: e.line,
endColumn: e.character,
message: e.raw,
severity: e.code.startsWith('E') ? monaco.Severity.Error : monaco.Severity.Warning
}
})
并为我的编辑器设置模型标记。
monaco.editor.setModelMarkers(this.editor.getModel(), 'test', errors)
这有效,虽然我仍然想自定义错误标记,但也许还有更自然的方法吗?