【问题标题】:"TypeError: identStart is undefined" when using Codemirror with XText将 Codemirror 与 XText 一起使用时出现“TypeError:identStart 未定义”
【发布时间】:2021-04-18 16:47:17
【问题描述】:

我目前正在尝试让 CodeMirror 编辑器与 XText 2.25 一起使用。但自从我将 CodeMirror 从 5.51 更新到 5.59.4 后,我总是收到一个错误,在使用自动完成时调用:

TypeError: identStart is undefined

我已经能够将其缩小到“show-hint.js”中的函数“cursorActivity”,CodeMirror 尝试在其中设置变量:

var identStart = this.startPos;
if(this.data) {
  identStart = this.data.from;
}

在没有 XText 的情况下使用编辑器时效果很好,但是当我使用 XText 时从未设置“from”,因此它失败了。我在这里有点不知所措。我试图找出是否可以配置 XText 以在 XText 服务器上调用验证时设置变量但找不到任何东西。我目前这样创建编辑器:

self.editor = xtext.createEditor({
          document: shadowRoot,
          xtextLang: self.xtextLang,
          sendFullText: true,
          syntaxDefinition: mode,
          lineNumbers: self.hasLineNumbers,
          showCursorWhenSelecting: true,
          enableValidationService: true,
          textUpdateDelay: self.textUpdateDelay,
          gutters: ["CodeMirror-lint-markers"],
          extraKeys: {"Ctrl-Space": "autocomplete"},
          hintOptions: { 
            container: widget_container
          }
        });

【问题讨论】:

    标签: javascript xtext codemirror


    【解决方案1】:

    出现问题是因为 Xtext-Codemirror 桥错过了设置自 53 版以来 CodeMirror 正在寻找的“from”变量。可以通过编辑文件 xtext-codemirror.js 并在“to”附近包含“from”来修复它“ 多变的。但这更像是一种解决方法而不是修复。

    【讨论】:

    猜你喜欢
    • 2021-11-24
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多