Angular - CKEditor component

Angular2 CKEditor 组件。「Angular2 CKEditor component」

Github星跟蹤圖

Angular - CKEditor component

Use the CKEditor (4.x) wysiwyg in your Angular application.

Demo

Installation

  • Include CKEditor javascript files in your application :
<script src="https://cdn.ckeditor.com/4.19.1/full-all/ckeditor.js"></script>
  • Install ng2-ckeditor

    • JSPM : jspm install npm:ng2-ckeditor
    • NPM : npm install ng2-ckeditor
    • YARN: yarn add ng2-ckeditor
  • Install @types/ckeditor

    • JSPM : jspm install npm:@types/ckeditor
    • NPM : npm install --save @types/ckeditor
    • YARN : yarn add @types/ckeditor
  • SystemJS Config :

System.config({
  map: {
    'ng2-ckeditor': 'npm:ng2-ckeditor',
  },
  packages: {
    'ng2-ckeditor': {
      main: 'lib/index.js',
      defaultExtension: 'js',
    },
  },
});
  • Please consider usage of the plugin divarea of CKEditor (see Issues)

Sample

Include CKEditorModule in your main module :

import { CKEditorModule } from 'ng2-ckeditor';
import { FormsModule } from '@angular/forms';

@NgModule({
  // ...
  imports: [CKEditorModule, FormsModule],
  // ...
})
export class AppModule {}

Then use it in your component :

import { Component } from '@angular/core';

@Component({
  selector: 'sample',
  template: `
  <ckeditor
    [(ngModel)]="ckeditorContent"
    [config]="{uiColor: '#99000'}"
    [readonly]="false"
    (change)="onChange($event)"
    (editorChange)="onEditorChange($event)" <!-- CKEditor change event -->
    (ready)="onReady($event)"
    (focus)="onFocus($event)"
    (blur)="onBlur($event)"
    (contentDom)="onContentDom($event)"
    (fileUploadRequest)="onFileUploadRequest($event)"
    (fileUploadResponse)="onFileUploadResponse($event)"
    (paste)="onPaste($event)"
    (drop)="onDrop($event)"
    debounce="500">
  </ckeditor>
  `,
})
export class Sample {
  ckeditorContent: string = '<p>Some html</p>';
}

Configuration

Toolbar Directives

You can use the following directives to add custom buttons to CKEditor's toolbar and organize them into groups.
For more info about CKEditor's Toolbar API refer to http://docs.ckeditor.com/#!/api/CKEDITOR.ui

  • <ckbutton> : Note that the name and command attributes are mandatory for this one.
<ckeditor
  [(ngModel)]="ckeditorContent">
    <ckbutton [name]="'saveButton'"
      [command]="'saveCmd'"
      (click)="save($event)"
      [icon]="'save.png'"
      [label]="'Save Document'"
      [toolbar]="'clipboard,1'">
    </ckbutton>
</ckeditor>
  • <ckgroup> : Can be used to organize multiple buttons into groups.
<ckeditor
  [(ngModel)]="ckeditorContent">
    <ckgroup
      [name]="'documenthandling'"
      [previous]="'1'">
        <ckbutton .... ></ckbutton>
        <ckbutton .... ></ckbutton>
    </ckgroup>
</ckeditor>

Issues

Licence

See LICENSE file

主要指標

概覽
名稱與所有者yabab-dev/ng2-ckeditor
主編程語言TypeScript
編程語言TypeScript (語言數: 1)
平台
許可證MIT License
所有者活动
創建於2016-02-03 22:40:34
推送於2023-01-09 03:32:49
最后一次提交2022-08-13 11:39:56
發布數19
最新版本名稱1.3.7 (發布於 )
第一版名稱v0.0.1 (發布於 )
用户参与
星數357
關注者數19
派生數93
提交數142
已啟用問題?
問題數298
打開的問題數13
拉請求數25
打開的拉請求數3
關閉的拉請求數11
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?