将 TinyMCE 集成到 Angular2 - ngOnDestroy 上的问题

问题描述

一个 Angular2 应用程序中,当我们将一张大图片(超过 2MB)加载到 tinyMCE 编辑器中作为 image:Base64 或 blob,并且当我们离开页面时,完成导航需要更长的时间,包括加载新模块。在 chrome 开发工具中,我只能看到渲染需要更长的时间才能完成,而且还有一个很长的任务。

我不仅不知道是什么导致了这种情况,而且在 Firefox 中,这很有效。同样,如果编辑器中没有图像或小图像,导航在两种浏览器中都有效。

现在没什么背景,这是一个遗留代码,我假设他们按照本教程 https://www.tiny.cloud/blog/angular-2-and-tinymce/ 将 tinyMCE 集成到 Angular2 中。

这是tinymce的初始化:

tinymce.init({
        relative_urls: false,document_base_url: window.location.protocol + '//' + window.location.host + '/' + window.location.pathname.split('/')[1],skin_url: 'assets/skins/lightgray',menubar: false,statusbar: false,selector: '#' + this.elementId,branding: false,readonly: 1,plugins: ['link','table','image','autoresize'],toolbar: false,autoresize_min_height: 200,default_link_target: '_blank',extended_valid_elements: 'a[href|target=_blank]',setup: (editor: any) => {
            this.ed = editor;
        },images_dataimg_filter: function (img) {
            return img.hasAttribute('internal-blob');
        }
    });

经过一些试验和思考后,我删除了 ngOnDestroy 调用和 tinymce.remove() 并且它起作用了! 我真的很想明白为什么。有什么建议和想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)