ACE 编辑器删除模块,因为 define 不是字符串

ACE editor dropping module because define wasn't a string

我在项目中使用 ace 编辑器。我正在按照中的教程尝试创建一个 HightLight Higlighter section on ace editor page,但是当我使用这段代码时:

define(function(require,exports,module){
        //any code here
});

我在 Web 控制台中收到此错误:

dropping module because define wasn't a string.

有人知道为什么会这样吗?

Ace 定义了一个名为 define 的全局函数,该函数就是产生错误的原因。

如果您有任何其他调用 define 的 JS 库(特别是 CommonJS 或 AMD 模块),如果 Ace 在它们之前加载,它们将最终调用 Ace 版本。

在我的例子中,我有一个由 Browserify 生成的 JS 文件,其中包含一堆 Node 模块,其中一个是用空数组而不是 [=13= 的字符串调用 define ] 参数。并且因为它包含在 Ace 脚本文件之后,它使用的是 define 的 Ace 版本,它抱怨有问题的错误消息。

更改脚本包含的顺序可能会解决此问题(将其他基于模块的脚本包含移动到 Ace 脚本包含之上)。这对我有用。