2
我正在使用一個接口,使用一個有向圖來建模軟件流水線,其中每個節點都有關聯的元數據和(最相關的)一個可編輯的代碼塊。現在我使用ACE來實現許多代碼友好的功能,但是一旦流水線達到一個相當低的複雜度門檻,ACE似乎就會陷入停頓,從而影響頁面其餘部分的響應能力。王牌javascript編輯器多個實例
眼下,這是發生了什麼事,每當一個新的節點出臺的相關部分:
view.codeDiv = d3.select('#code-section');
view.aceEditor = ace.edit('task-code');
view.aceEditor.setTheme("ace/theme/chrome");
view.aceEditor.getSession().setMode("ace/mode/ourMode");
view.aceEditor.getSession().on('change', function(e) {
if (view.model !== undefined &&
view.aceEditor !== undefined &&
view.model.get('cmd') !== view.aceEditor.getValue() &&
view.aceEditor.getValue() !== '') {
view.model.set('cmd', view.aceEditor.getValue());
}
});
我很擔心的是,ACE會話沒有有朝一日能關閉,不互相打好。我正在試驗不同的時機來宣佈它們「不可編輯」,並希望減少它們的內存需求,但更大的用戶界面結構使得這很難。有沒有其他人試圖改善多個活動ACE實例的性能?