javascript - Monaco-Editor JavaScript 关键词语法高亮

标签 javascript syntax-highlighting monaco-editor

当使用嵌入在网页中的 monaco-editor (0.15.6) 编辑 javascript 时,如果属性名称或函数名称对应于语言关键字(例如 '删除”或“抛出”)。 VS Code 中的语法突出显示/着色没有同样的问题,所以想知道在浏览器中使用 monaco-editor 时是否有办法修复/覆盖此行为。 Here is an example of the highlighting when an object has a property named '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"]
  });

感谢任何提示!

最佳答案

不确定,但我认为这是因为 delete 是一个保留字。您的所有属性都将具有相同的颜色。但是保留字会有不同的颜色。

关于javascript - Monaco-Editor JavaScript 关键词语法高亮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54119653/

相关文章:

javascript - datepicker指定的值不符合jquery.js要求的格式

Python replace() 带颜色的字符串?

javascript - 如何在 Monaco Editor 实例中设置制表符宽度?

google-apps-script - 如何在编辑器中搜索所有文件?

javascript - 从带有 Angular 读取错误的水滴中获取选择值

javascript - 基于多选切换div

javascript - 如何在另一个函数中分配函数调用返回的值 [JS]

syntax-highlighting - 如何自动突出显示vim中的单词?

输出 HTML 的 C# 语法荧光笔

asp.net-mvc - 在 Web 应用程序中使用 Monaco 编辑器