1
我使用CodeMirror在基於HTML5的演示文稿中創建編輯器。它是最簡單的形式,html看起來像這樣。codemirror 3.0格式預裝了textarea代碼
<section class="pattern">
<textarea id='pattern-view' class='codemirror' data-mode='javascript'>
var myModule = function(){
//code goes here
}
</textarea>
</section>
和向下的文件準備好我的這個作品如預期,textarea的被替換爲編輯器的代碼
$(function(){
var tAreas = document.querySelectorAll('.codemirror');
for (var i = 0; i < tAreas.length; i++) {
CodeMirror.fromTextArea(tAreas[i], { theme: 'monokai', mode: tAreas[i].dataset.mode });
}
});
。麻煩的是縮進被保留並且格式不正確。它只突出顯示代碼,不會重新格式化內容。
有什麼我需要添加到此?我確實找到了formatting.js插件的代碼,它不再是codemirror 3.0的一部分。
有沒有辦法自動格式化textarea內的代碼?
不幸的是,當我嘗試這種方法,它實際上硬件鎖我的網頁,以恆定25%的CPU(每片過程中的上限)。 –
如果你有太多的文本區域將是問題,你的屏幕將鎖定。沒有其他的解決辦法,或者至少我沒有嘗試過任何新的東西。即使你把這個作爲一個長期運行的過程並且返回一個承諾(或者在設置的超時時間內完成),你仍然需要很長時間來運行它的問題。 –
不幸的是,我只有一個textarea。不太確定它爲什麼鎖定,但它非常的終端,而且速度非常快。 –