diff --git a/src/block_manager/index.js b/src/block_manager/index.js index ca3c25636..75f2a819b 100644 --- a/src/block_manager/index.js +++ b/src/block_manager/index.js @@ -255,6 +255,16 @@ export default () => { } return this.getContainer(); + }, + + destroy() { + blocks.reset(); + blocks.stopListening(); + blocksVisible.reset(); + categories.reset(); + blocksView.remove(); + [blocks, blocksVisible, categories, blocksView].forEach(i => (i = null)); + c = {}; } }; }; diff --git a/src/editor/model/Editor.js b/src/editor/model/Editor.js index 3a1785d09..aae390465 100644 --- a/src/editor/model/Editor.js +++ b/src/editor/model/Editor.js @@ -759,7 +759,8 @@ export default Backbone.Model.extend({ Keymaps, RichTextEditor, LayerManager, - AssetManager + AssetManager, + BlockManager } = this.attributes; this.stopDefault(); DomComponents.clear(); @@ -771,6 +772,7 @@ export default Backbone.Model.extend({ RichTextEditor.destroy(); LayerManager.destroy(); AssetManager.destroy(); + BlockManager.destroy(); this.view.remove(); this.stopListening(); this.clear({ silent: true });