Vorrei integrare l'editor JavaScript CodeMirror in KnockoutJS. So che c'è anche Ace, ma mi sembra che sarebbe più facile con CodeMirror.Come integrare CodeMirror in KnockoutJS?
Ho già integrato i binding personalizzati per i widget JQueryUI e QTip ma questi erano pezzi di codice che ho trovato su Internet e quindi avevo solo bisogno di modificare parti molto piccole.
Sfortunatamente, sembra che abbia raggiunto i miei limiti su Javascript, quindi mi rivolgo a JavaScript Sith Masters qui. Non voglio necessariamente che tutto sia scritto per me, indicazioni e consigli su come continuare sarebbe di grande aiuto.
Il pezzo di codice che ho:
Il codice HTML (ho tolto associazioni personalizzate Ho già sulla textarea, essi non contano qui)
<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>
L'inizio della mia abitudine gestore vincolante per CodeMirror:
ko.bindingHandlers.codemirror = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
var options = valueAccessor() || {};
var editor = CodeMirror.fromTextArea($(element)[0], options);
}
};
al momento, questo non produce JS errori ma 2 aree di testo vengono visualizzati invece di uno.
Quindi cosa dovrei fare dopo?
Potresti riprodurlo in un jsfiddle? Non vedo nulla di sbagliato nel tuo gestore di binding. L'unica cosa strana è che avvolgi l'elemento con jquery e poi estrai il primo elemento. Puoi saltarlo e solo fornire l'elemento. – Anders
@Anders grazie, ho rimosso il jQuery Wrap. JSFiddle: http://jsfiddle.net/SKZSm/ – Jalayn