Я установил CKEditor для Angular, следуя этому руководству: https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/frameworks/angular.html
Я импортировал CKEditorModule в свой модуль и добавил его в свой импорт.
import { CKEditorModule } from "@ckeditor/ckeditor5-angular";
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
AppRoutingModule,
CKEditorModule
],
providers: [],
bootstrap: [AppComponent]
})
В своем компоненте я добавилПостроить ClassicEditor и присвоить его общедоступному свойству.
import * as ClassicEditor from '@ckeditor/ckeditor5-build-classic';
export class AppComponent {
title = 'AngularCkeditor';
public Editor = ClassicEditor;
}
Наконец, я использую тег ckeditor в своем html-шаблоне:
<ckeditor [editor]="Editor" data="<p>Hello, world!</p>"></ckeditor>
Он работает очень хорошо!
Теперь я хочу добавить к нему несколько плагинов, но нет объяснения, как этого добиться.
Поэтому я следовал руководству по установке плагинов по умолчанию: https://ckeditor.com/docs/ckeditor5/latest/builds/guides/integration/installing-plugins.html
Например, я пыталсяЧтобы установить плагин Alignment:
npm install --save @ ckeditor / ckeditor5-alignment
Затем я импортировал плагин в свой компонент и попытался загрузить его.
import Alignment from '@ckeditor/ckeditor5-alignment/src/alignment';
ClassicEditor.builtinPlugins = [
Alignment
];
Когда я делаю это, я застреваю с ошибкой:
TypeError: Невозможно прочитать свойство 'getAttribute' с нулевым значением
![enter image description here](https://i.stack.imgur.com/W4zBn.png)
Это так странно, потому что я следовал тому же руководству поотредактируйте конфигурацию CKEditor, и она отлично работает.
ClassicEditor.defaultConfig = {
toolbar: {
items: [
'heading',
'|',
'alignment',
'bold',
'italic',
'|',
'bulletedList',
'numberedList',
'|',
'link',
'blockQuote',
'|',
'imageUpload',
'|',
'undo',
'redo'
]
},
image: {
toolbar: [
'imageStyle:full',
'imageStyle:side',
'|',
'imageTextAlternative'
]
},
language: 'en'
};
![enter image description here](https://i.stack.imgur.com/Bea9M.png)