【问题标题】:Ace Editor and Dojo 1.9 with AMDAce Editor 和 Dojo 1.9 与 AMD
【发布时间】:2013-11-04 00:19:10
【问题描述】:

我在将 Ace 编辑器与 Dojo 1.9 一起使用 AMD 加载时遇到问题。

<script type="text/javascript">
    require([
        'dojo/on',
        'dojo/dom',
        'somelocal/folder/ace'
        'dojo/domReady!'
    ],
            function(
                    on,
                    dom,
                    ace
                    ) {
                var editor = ace.edit("editor");
                editor.setTheme("ace/theme/github");
                editor.getSession().setMode("ace/mode/twig");
            });
</script>

我收到一个错误:

TypeError: _define.modules is undefined
var module = _define.modules[moduleName];

如何在 dojo 中包含上述 Ace?

谢谢

【问题讨论】:

    标签: javascript dojo amd ace-editor


    【解决方案1】:

    不要尝试像那样加载 ACE,它会一直失败,即使您设法在加载时调整 require/define。

    目前有效的是:

    • 通过脚本标签加载ACE,如示例所示
    • 使用 ace.require 来加载 ACE 扩展/主题,而不是 Dojo 的 require

    原因:ACE 是用 require-js 构建的,大多数模块也是用 CJS 编写的,而不是 AMD;这意味着您在构建 Dojo 应用程序时也会遇到麻烦。

    here 是我的 Dojo ACE 编辑器(抓住你需要的东西)

    【讨论】:

      猜你喜欢
      • 2012-04-14
      • 2012-02-29
      • 1970-01-01
      • 2012-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-12
      • 2017-07-25
      相关资源
      最近更新 更多