它在这里说(http://ace.c9.io/#nav=embedding)只是将某个src *子目录复制到你的项目中 我把它放在mykeystoneapp / public / js中(我的默认主页是mykeystoneapp / public)
以下是我得到的错误:
1.未捕获TypeError:$ .cookie不是函数(ui.js:8)
2.未捕获错误:错过了匿名的define()模块:function ...(require.js:141) http://requirejs.org/docs/errors.html#mismatch
这是我的Jade代码:
script(src='/js/ace/demo/kitchen-sink/require.js')
script.
require.config({paths: {ace: "/js/ace/build/src"}});
define('testace', ['ace/ace'],
function(ace, langtools) {
console.log("This is the testace module");
var editor = ace.edit("editor_container");
editor.setTheme('eclipse');
editor.session.setMode('javascript');
require(["/js/ace/lib/ace/requirejs/text!src/ace"], function(e){
editor.setValue(e);
})
});
require(['testace']);
其次,如果我将调试器放入EventEmitter(https://github.com/ajaxorg/ace-builds/blob/master/src/ace.js#L3300) 我可以看到它正确地到达EventEmitter._dispatchEvent eventName ='changeMode'但它没有任何操作就返回,因为没有!listeners或defaultHandler
答案 0 :(得分:0)
editor.session.setMode('javascript');
错误,应该是editor.session.setMode('ace/mode/javascript');
。主题应该是ace/theme/eclipse
。
错误与ace无关,因为ace没有名为ui的文件。