使用monaco-editor (0.15.6)在网页中编辑javascript时,如果属性名或函数名与语言关键字(如'delete'或'throw')对应,则对象属性/函数的语法高亮/着色显示不正确。在VS Code中的语法高亮/着色没有这个问题,因此想知道在浏览器中使用monaco-editor时是否有修复/覆盖此行为的方法。
这是一个示例,当对象具有名为'delete'的属性时,突出显示
您会注意到名为'prop2'的属性具有正确的颜色,但名为'delete'的属性没有。主题和语言设置如下:
monaco.editor.setTheme('vs-dark');
monaco.languages.typescript.javascriptDefaults.setDiagnosticsOptions({
noSemanticValidation: false,
noSyntaxValidation: false,
});
monaco.languages.typescript.javascriptDefaults.setCompilerOptions({
allowNonTsExtensions: true,
experimentalDecorators: true,
esModuleInterop: true,
allowSyntheticDefaultImports: true,
noImplicitAny: true,
module: monaco.languages.typescript.ModuleKind.ESNext,
target: monaco.languages.typescript.ScriptTarget.ESNext,
allowJs: true,
checkJs: true,
noUnusedLocals: true,
noFallthroughCasesInSwitch: true,
noImplicitThis: true,
typeRoots: ["node_modules/@types"]
});
有任何建议都会受到欢迎!