这是因为你正在使用构建版本导入插件! 为了添加插件,你需要进行个人构建。请阅读这个页面了解更多信息:CKEditor官方文档。 他们甚至有一个官方的在线构建工具可以为你完成所有的工作:CKEditor在线构建器。 一旦你创建好了个人构建,你需要像第2行之前所做的那样导入编辑器,但是不要写"@ckeditor/ckeditor5-build-classic",而是写上"你个人构建的文件夹地址"。
希望对你有帮助。
我在尝试单独添加CKEditor和插件时遇到了问题。最简单的方法是访问 CKEditor在线构建器 并选择所需的插件和工具栏项目,然后经过五个步骤生成需要使用的代码。
然后您可以在构建文件夹中使用名为ckeditor.js的文件,这几乎就是所有您需要的了。
1- 添加CKEditorModule
@NgModule({
imports: [CKEditorModule],
...
}
2- 将CKEditor标签添加到您的模板中
<ckeditor
[editor]="Editor"
[(ngModel)]="notification.body"
(ready)="onReady($event)"
[config]="config"
></ckeditor>
3- 将自定义的CKEditor js文件导入您的组件中(您需要从下载的自定义CKEditor构建文件夹中复制)
import * as customEditor from './ckeditor';
4- 在你的组件中创建一个属性
public Editor = customEditor;
5- 添加你的配置
ngOnInit() {
this.config = {
toolbar: {
items: [
'heading',
'|',
'fontSize',
'fontFamily',
'|',
'bold',
'italic',
'underline',
'strikethrough',
'highlight',
'|',
'alignment',
'|',
'numberedList',
'bulletedList',
'|',
'indent',
'outdent',
'|',
'todoList',
'link',
'blockQuote',
'imageUpload',
'insertTable',
'|',
'undo',
'redo'
]
},
language: 'en',
image: {
toolbar: [
'imageTextAlternative',
'imageStyle:full',
'imageStyle:side'
]
},
table: {
contentToolbar: [
'tableColumn',
'tableRow',
'mergeTableCells'
]
},
licenseKey: '',
wordCount: {
onUpdate: stats => {
this.charactersLength = stats.characters
}
}
}
}
就是这样 :)
我曾经遇到过类似的问题。当我安装了同一版本的所有模块后,问题得以解决。
注意:我们不再使用@ckeditor/ckeditor5-build-classic!
错误的写法:
import ClassicEditor from '@ckeditor/ckeditor5-build-classic';
正确的写法:
import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor';
For vue2: Use the code below from online builder and it works fine after this isse. Hope this helps someone.
<ckeditor :editor="editor" v-model="editorForm.editor_content" :config="editorConfig"
:height="120" :rows="6" @input="onEditorInput" @ready="onReady">
<p>The initial editor data.</p>
</ckeditor>
Import custom build file ckeditor.js from node_modules:
import CkEditorBuild from 'ckeditor5-custom-build/build/ckeditor';
Import ckeditor:
import CKEditor from '@ckeditor/ckeditor5-vue2';
variable:
editorForm: {
editor_content: "",
},
editor: CkEditorBuild,
editorConfig: {
toolbar: {
items: [
'heading',
'|',
'htmlEmbed',
// 'pageBreak',
'fontSize',
'fontFamily',
'fontColor',
'fontBackgroundColor',
'|',
'bold',
'italic',
'underline',
'strikethrough',
'|',
'alignment',
'|',
'numberedList',
'bulletedList',
'|',
'indent',
'outdent',
'|',
'link',
'blockQuote',
'imageUpload',
'insertTable',
'mediaEmbed',
'|',
'undo',
'redo',
]
}, language: 'cs',
image: {
toolbar: [
'imageTextAlternative',
'imageStyle:center',
]
},
table: {
contentToolbar: [
'tableColumn',
'tableRow',
'mergeTableCells'
]
},
},