You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Usage of ace.tern in dynamic tab creation is resulting in tremendous memory increase.
The memory used for an editor in a tab will not be cleared, when the editor gets destroyed, this results in crashing the browser object.
A sample code used for the dynamic creation and termination of an editor
aceEditor = { append : function(editor,tabId){
var useWebWorker = true;
editor.getSession().setUseWorker(useWebWorker);
editor.session.setMode("ace/mode/javascript");
editor.getSession().setUseWrapMode(true);
editor.getSession().setWrapLimitRange(null, null);
editor.setShowPrintMargin(false);
ace.config.loadModule('ace/ext/language_tools', function() {
ace.config.loadModule('ace/ext/tern', function() {
editor.setOptions({
enableTern: {
defs: ['browser', 'ecma5', 'ourData'],
plugins: {
doc_comment: {
fullDocs: true
}
},
useWorker: useWebWorker,
switchToDoc: function(name, start) {
console.log('switchToDoc called but not defined. name=' + name + '; start=', start);
},
startedCb: function() {
console.log('editor.ternServer:', editor.ternServer);
},
},
enableSnippets: false,
enableBasicAutocompletion: true,
});
});
});
// Append editor into tabs using "tabId"
},
remove : function(editor,tabId){
editor.setSession(null);
editor.destroy();
// Remove tab from tabs using "tabId"
}
}
The text was updated successfully, but these errors were encountered:
Usage of ace.tern in dynamic tab creation is resulting in tremendous memory increase.
The memory used for an editor in a tab will not be cleared, when the editor gets destroyed, this results in crashing the browser object.
A sample code used for the dynamic creation and termination of an editor
aceEditor = { append : function(editor,tabId){
}
The text was updated successfully, but these errors were encountered: