diff --git a/src/code_manager/index.js b/src/code_manager/index.js index e0689f523..dce2d97d9 100644 --- a/src/code_manager/index.js +++ b/src/code_manager/index.js @@ -219,6 +219,12 @@ export default () => { for (var id in defViewers) this.addViewer(id, defViewers[id]); return this; + }, + + destroy() { + [c, generators, defGenerators, viewers, defViewers].forEach( + i => (i = {}) + ); } }; }; diff --git a/src/editor/model/Editor.js b/src/editor/model/Editor.js index fd77448de..1267f6af1 100644 --- a/src/editor/model/Editor.js +++ b/src/editor/model/Editor.js @@ -760,7 +760,8 @@ export default Backbone.Model.extend({ RichTextEditor, LayerManager, AssetManager, - BlockManager + BlockManager, + CodeManager } = this.attributes; this.stopDefault(); DomComponents.clear(); @@ -773,6 +774,7 @@ export default Backbone.Model.extend({ LayerManager.destroy(); AssetManager.destroy(); BlockManager.destroy(); + CodeManager.destroy(); this.view.remove(); this.stopListening(); this.clear({ silent: true });