【问题标题】:ACE editor + requirejs + AMD jquery plugin: mode cannot be loadedACE 编辑器 + requirejs + AMD jquery 插件:无法加载模式
【发布时间】:2013-12-08 12:17:23
【问题描述】:

我正在使用这个版本的 ACE - git://github.com/ajaxorg/ace.git

这是我通过 requirejs 加载的,

require([
    // Load our app module and pass it to our definition function
    'jquery',
    'ext/ace-master/lib/ace/ace'
...

以及我如何唤起编辑,

var editor = ace.edit("ace-editor");
editor.setTheme("ext/ace-master/lib/ace/theme/eclipse");
editor.getSession().setMode("ext/ace-master/lib/ace/mode/xml");

但是我总是收到这个错误信息,语法高亮没有高亮表单中的任何代码,

Could not load worker
ace.js (line 1)
TypeError: this.$mode.createWorker is not a function


...ts","module","ace/lib/lang"],function(a,b,c){var d=a("../lib/lang"),e=function()...


TypeError: a.getTokenizer is not a function


...ts","module","ace/lib/lang"],function(a,b,c){var d=a("../lib/lang"),e=function()...

有人遇到过这个问题并知道如何解决吗?

如果我使用这个构建版本 - https://github.com/ajaxorg/ace-builds/ 会有更多错误 - 找不到文件等。

或者这个http://d1n0x3qji82z53.cloudfront.net/src-min-noconflict/ace.js - 很多未找到的错误!

注意:我是通过jquery ajax加载表单,请问是ajax导致的错误吗??

【问题讨论】:

    标签: jquery jquery-plugins requirejs ace-editor


    【解决方案1】:

    你错误配置了 require 路径

    添加

    require.config({paths: {
        ace: "ext/ace-master/lib/ace"
    }})
    

    在第一个要求之前 并使用setMode("ace/mode/xml");

    查看http://jsbin.com/ojijeb/339/edit 了解工作版本

    【讨论】:

      【解决方案2】:

      是的,您的 AJAX 会在其余 Javascript 完成后加载您的表单。

      您可以让相同的函数重新加载您的 Javascript,但我不确定可能会出现什么样的冲突,因为您的代码并不是真的全部在这里。

      我遇到了类似的问题,为了解决这个问题,我将 Javascript 包含在我请求的 HTML 数据中。值得深思。

      【讨论】:

      • 谢谢。你如何`在数据中包含Javascript`?你能举一些例子吗?您的意思是将 ACE 放在表单本身内吗?
      • 好吧,我不确定您要做什么,但就我而言,我请求 HTML 文件的一部分,其中包含一些 divs 之类的,并且在代码块的末尾我拍了我的<script src=...></script> 如果你想看看它是否与你的情况有关,我在asims.fleeceitout.com的服务器上将它沙盒化了@
      • 我知道这只是我想展示的概念。如果您进一步陷入困境,请告诉我,我们会尽力解决
      【解决方案3】:

      终于在这个构建版本上工作了 - https://github.com/ajaxorg/ace-builds/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-09-21
        • 2015-06-26
        • 1970-01-01
        • 1970-01-01
        • 2015-04-21
        • 2013-02-28
        • 1970-01-01
        • 2015-06-07
        相关资源
        最近更新 更多