2016-08-26 20 views
3

私はこのコードを角度指示にしています。CKeditorにデータがロードされない場合があります。

var ck = CKEDITOR.replace(element[0]);    
      ngModel.$render = function() { 
      $timeout(function() { 
       ck.setData(ngModel.$modelValue); 
      },350); 
      }; 

      ck.on('instanceReady', function() { 
       $timeout(function() { 
       ck.setData(ngModel.$viewValue); 
       },350); 
      }); 

      function updateModel() { 
      scope.$apply(function() { 
        ngModel.$setViewValue(ck.getData()); 
      }); 
      } 

      ck.on('pasteState', updateModel); 

ただし、API経由で読み込まれたデータはエラーなしでセットアップされません。 console.log(ngModel.$viewValue)は常に情報を表示します。

答えて

0

CKEditor 4 documentation内部には「pasteState」イベントはなく、「paste」のみです。だから、おそらく "貼り付け"または "変更"イベントを聞く必要があります。 このようなもの:

var ck = CKEDITOR.replace(element[0]);    

ck.on('instanceReady', function() { 
    $timeout(function() { 
    ck.setData(ngModel.$viewValue); 
    },350); 
}); 

function updateModel() { 
    scope.$apply(function() { 
     ngModel.$setViewValue(ck.getData()); 
    }); 
} 

ck.on('paste', updateModel); 
ck.on('change', updateModel); 

ngModel.$render = function() { 
    $timeout(function() { 
     ck.setData(ngModel.$modelValue); 
    },350); 
}; 
関連する問題