我想将CodeMirror JavaScript编辑器集成到KnockoutJS中。我知道还有Ace,但在我看来CodeMirror会更容易。如何将CodeMirror整合到KnockoutJS中?
我已经集成的自定义绑定jQueryUI的小部件和QTip但这些代码段我在网上找到的,我则仅需要修改很小部分。
不幸的是,似乎我已经达到了我对Javascript的限制,所以我在这里转向JavaScript Sith Masters。我不一定要为我写的东西,指针和关于如何继续的建议会有很大的帮助。
的一段代码,我有:
的HTML(我删除自定义绑定我已经在textarea的,他们不事这里)
<body>
<textarea id="code" cols="60" rows="8"
data-bind="value: condition,
tooltip: 'Enter the conditions',
codemirror: { 'lineNumbers': true, 'matchBrackets': true, 'mode': 'text/typescript' }"></textarea>
</body>
我的自定义绑定处理程序的开始对于CodeMirror:
ko.bindingHandlers.codemirror = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
var options = valueAccessor() || {};
var editor = CodeMirror.fromTextArea($(element)[0], options);
}
};
此刻,这不会产生JS错误,但显示2个文本区域而不是一个。
那么接下来我该怎么做?
请问您可以在jsfiddle中重现它吗?我没有看到你的绑定处理程序有什么问题。奇怪的是,你用jquery包装元素,然后取出第一个元素。你可以跳过这个,只提供元素。 – Anders
@Anders谢谢,我删除了jquery包装。 JSFiddle:http://jsfiddle.net/SKZSm/ – Jalayn