CKeditor5 圖片上傳


下面是自定義了一個適配器,之前我一直是在
ClassicEditor
    .create( editorElement, {
        ckfinder: {
            uploadUrl: '/ckfinder/core/connector/php/connector.php?command=QuickUpload&type=Files&responseType=json'
        }
    } )
    .then( ... )
    .catch( ... );

  這里添加了個 ckfinder ,沒弄出來。  所以用了下面 很 賊幾把OK,感謝發我這段代碼的 那位大佬。

//  上傳適配器,格式官網上有,以一種Promise 的方式。Promise好像是有阻塞的意思在里面。
class UploadAdapter {
    constructor(loader) {
        this.loader = loader;
    }
    upload() {
        return new Promise((resolve, reject) => {
            const data = new FormData();
            data.append('upload', this.loader.file);
            data.append('allowSize', 10);//允許圖片上傳的大小/兆
            $.ajax({
                url: 'loadImage',
                type: 'POST',
                data: data,
                dataType: 'json',
                processData: false,
                contentType: false,
                success: function (data) {
                    if (data.res) {
                        resolve({
                            default: data.url
                        });
                    } else {
                        reject(data.msg);
                    }

                }
            });
           
        });
    }
    abort() {
    }
}

DecoupledEditor
        .create( document.querySelector( '#b' ), {
            language:"zh-cn"
        })
        .then( editor => {
            const toolbarContainer = document.querySelector( '#a' );
            toolbarContainer.appendChild( editor.ui.view.toolbar.element );
            
           // 這個地方加載了適配器
            editor.plugins.get('FileRepository').createUploadAdapter = (loader)=>{
                return new UploadAdapter(loader);
            };
        } )
        .catch( error => {
            console.error( error );
        } );

 

                                                                              2018年5月7日22:47:58


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM