2017-07-18 10 views
0

私のAngular 4アプリでは、TinyMCEの中で画像のアップロード作業を行うことができませんでした。一般的な画像プラグインが正しく動作していません。 POST URLを指定することができれば、私は非常にsimple upload windowに満足しています(+アプリケーション/オクテットストリームが好きですが、フォームもOKです)。角4 - TinyMCE画像のアップロード

私のアプリで既に ng2-file-uploadを正常に使用しましたが、TinyMCEはtypescriptをサポートしていないため、そこでは使用できませんでした。

TinyMCEの画像アップロードを成功させた方は誰でも、角4を使用できますか?

+0

''すでにアプリケーションでng2-file-uploadを正常に使用しましたが、TinyMCEはtypescriptをサポートしていないため、そこでは使用できませんでした」 - TinyMCEはブラウザで動作し、ブラウザは実際にTypeScriptを実行することができません。ウェブブラウザに配信される前に、すべてJavaScriptでコンパイルされます。 –

+0

@MichaelFromin私が言ったことは、カスタムボタンとeditor.windowManager.openをhtmlの下で使用することはできません:Angularを使用し、typescriptを利用することです。 – BadHabits

答えて

0

最終的にng2-file-uploadの使い方を管理しました。以下のコードは、私がtinyMCE用のものを定義するエディタコンポーネントの一部です。私は最もインパクトのある部分のみを表示します。

HTML:

<textarea id="{{elementId}}"></textarea> 
<input id='input' type="file" #fileInput ng2FileSelect [uploader]="uploadFile.uploader" style="display: none;" 
     accept="image/png,image/gif,image/jpeg"/> 

は活字体:

ngOnInit() { 
    this.uploadFile.uploader.onCompleteItem = (item: any, response: string, status: any, headers: any) => { 
    .... 
      tinymce.activeEditor.insertContent('<img src="' + location + '"/>'); 
.... 
    }; 
    } 

ngAfterViewInit() { 

    tinymce.init({ 
..... 
setup: editor => { 
     this.editor = editor; 
     editor.on('keyup',() => { 
      const content = editor.getContent(); 
      this.onEditorKeyup.emit(content); 
     }); 
     editor.on('reset', function(e) { 
      editor.setContent(''); 
     }); 
     editor.addButton('mybutton', { 
      text: 'Image', 
      icon: 'image', 
      onclick: function() { 
      var input = document.getElementById('input'); 
      input.click(); 
      } 
     }); 
     }, 
..... 
} 

それはちょうどクリックして、アップロードにファイルピッカーを開き、非常に派手ではありません(autouploadするアップローダーを設定する必要があります)が、それはのために十分です私。

関連する問題