Angular2里Ckeditor銷毀的解決方式

一、問題

Angular2中,在使用ckeitor4.x編輯器的頁面中,切換到其他頁面,其他頁面會報警告,警告內(nèi)容如下:
[CKEDITOR] Error code: editor-destroy-iframe. ckeditor.js:21
[CKEDITOR] For more information about this error go to http://docs.ckeditor.com/#!/guide/dev_errors-section-editor-destroy-iframe
根據(jù)鏈接文檔解釋如下:

image.png

翻譯過來就是,需要我們在ckeditor從dom中卸載前先把ckeditor銷毀。
看了angular1中的使用方式是在進(jìn)入頁面時先判斷有沒有ckeditor的實例,如果有就先銷毀再創(chuàng)建新的,和這里是一個意思。只是這過程中我該如何在angular2中去實現(xiàn)這個銷毀的過程。
嘗試了一些方法都沒有成功。沒轍,只能在github.com上查看ng2-ckeditor這個項目里的issue里是否有這個問題。果然有。參考了下,改變兩處引入方式,一個是index.html里ckeditor的js地址,二是頁面中使用ckeditor組件的位置,config信息里添加插件需求。

二、解決步驟

  1. 在應(yīng)用的index.html頁面中將引入的js地址修改為:
    <script src="https://cdn.ckeditor.com/4.5.11/full-all/ckeditor.js"></script>

2.使用位置修改
<ckeditor [(ngModel)]="templateData.content" [config]="{extraPlugins: 'divarea'}"></ckeditor>
增加[config]="{extraPlugins: 'divarea'}", 這里需要使用插件divarea

三、總結(jié)

問題是解決了,但原理是什么還需要再看看。不過到是體會了遇到解決不了的問題,應(yīng)該回到社區(qū),回到項目根源。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容