我有一个关于在 smartGWT 选项卡中集成 CodeMirror UI 的问题。
基本上,我无法在附加到 smartGWT 选项卡的 textarea 元素中显示 CodeMirror-UI 编辑器。这是我所做的:
- 我按照页面上的描述安装了 CodeMirror-UI ,更正了路径以匹配我的项目的目录层次结构
我在我的项目的主要 html 中写了一个 js 脚本(开头):
<head> ... <script> function fireEditor() { var textarea = window.document.getElementById('tab_editor' ); var uiOptions = { path : 'codemirror-ui/js/', searchMode : 'inline' }; var codeMirrorOptions = { mode: 'javascript' }; var editor = new CodeMirrorUI(textarea,uiOptions,codeMirrorOptions); } </script> </head>
我在打开(smartGWT)选项卡时调用了脚本:
// create a smartGWT tab Tab tab = new Tab("tab"); tab.setID("tab"); tab.setCanClose(true); // put the CodeMirror UI inside the smartGWT tab // create a smartGWT canvas Canvas tabContent = new Canvas(); tabContent.setID("tabc"); tabContent.setWidth100(); tabContent.setHeight100(); // use a GWT HTMLPanel to attach new html elements to the smartGWT canvas // and invoke the fireEditor() function to load the CodeMirror UI HTMLPanel editorContainer = new HTMLPanel( "<div id=\"editor_container\">" + "<textarea id=\"tab_editor\" style=\"width:100%;height:100%\" onload=\"fireEditor()\">" + "</textarea>" + "</div>"); editorContainer.setWidth("100%"); editorContainer.setHeight("100%");
从浏览器运行(我使用的是 firefox - iceweasel 10.0.10),这会导致 smartGWT 选项卡显示一个空的 textarea 元素。使用 firebug 检查,smartGWT 选项卡中的区域包含我在 HTMLPanel 中指定的 HTML,但没有显示 CodeMirror UI。
我错过了什么?
我正在使用 Eclipse Indigo,gwt 2.4.0、smartgwt 3.0p 和来自其 git repo(它本身使用 CodeMirror 2.3)的 codemirror ui 0.0.19。
谢谢