javascript - 使用 webpack 在 Laravel 5 中将插件安装到 CKEditor 5
问题描述
我在将插件安装到集成到 Laravel 5.6 的 CKEditor 时遇到了一个小问题。根据 CKEditor 文档的集成指南,我能够@ckeditor/ckeditor5-build-classic
使用 npm 将依赖项添加到项目中,并且它与 webpack 一起工作得很好。
但问题是我无法添加默认情况下不包含在 CKEditor 中的自定义插件。我正在按照指南添加自定义插件,但在 laravel 本身中使用 webpack 并不能很好地工作。例如,我尝试添加@ckeditor/ckeditor5-alignment
,但没有成功,并且出现以下控制台错误。
TypeError: Cannot read property 'getAttribute' of null
我想这可能是我在设置 ClassicEditor 实例时没有添加所有必要的插件。所以我尝试了另一件事。我已将插件安装到 ckeditor build 并获得了自定义版本。但是,当我尝试使用以下语句在自定义路径中导入构建时,它并没有导入。
import ClassicEditor from '../plugins/vendor/ckeditor/build/ckeditor';
如果我只是从 node_modules 中删除构建目录并复制此自定义构建,则可以使用以下语句使其工作。
import ClassicEditor from '@ckeditor/ckeditor5-build-classic/build/ckeditor';
这不是在 node_modules 中编辑/更新的专业方法。
所以我的问题是:
如何在 Laravel 本身上将自定义插件安装到 CKEditor?
或者如何在不自定义 node_modules 的情况下将自定义 CKEditor 构建添加到项目中?
解决方案
我在我的 Laravel 项目中使用过 CKEditor 等,但我是这样做的:
- 我从 CKEditor 网站下载了 js 和 CSS 文件并解压缩文件
- 我将这些文件复制到我的 Laravel 项目的公共文件夹中
- 您可以像这样在刀片页面中访问和使用它们
<code>
<script src="{{asset('js/ckeditor.js')}}"></script>
<link rel="stylesheet: href="{{asset('js/ckeditor.js')}}" />
</code>
推荐阅读
- r - 在 R 中重新组织数据框?
- python - 如何排斥像ggrepel这样的python图上的文本?
- c - 如何同步我的两个线程,每个线程都对共享资源使用 while 循环?
- blockchain - EIP170 - 哪些合约功能最能解释其规模?
- html - 如何从同一位置开始在不同行中的文本?HTML/CSS
- python - 在 python 中使用库给出警告我无法关闭
- ios - IOS/x-code/AutoLayout 自动布局系统错误
- c# - 无法使用包含的 Linq 查询方法
- javascript - 使用 Electron/Webdriver 拖放
- azure-devops - Azure DevOps 发布管道 - 允许在发布时选择分支