ruby-on-rails - 通过 webpack 将 CKEditor 4 与 Rails 6 集成
问题描述
我必须升级一个使用 CKedtior 来实现文本编辑器功能的遗留应用程序。
由于 ckeditor 的 Ruby gem 不再那么好维护,而且 Rails 6 似乎是一个问题,我决定直接使用 webpacker。
我使用命令添加了 ckeditor v 4,yarn add
然后将 js 文件导入到我的 application.js/active_admin.js 文件中。( import "ckeditor4";
)
根据文档,我还必须设置一个CKEDITOR_BASEPATH
常量。该常量应指向 ckeditor 文件所在的路径。
为了拥有这些文件,我已经使用这个附加设置配置了 webpacker:environment.config.set('output.libraryTarget', 'umd')
我认为这会在我的 public/packs/js 文件夹中创建一个 ckeditor 目录,但它不起作用。如何让 webpack 创建这个折叠/文件?
解决方案
我通过添加 CopyPlugin 并像这样配置它来解决这个问题:
environment.plugins.append('CopyPlugin',
new CopyPlugin({
patterns: [
{
from: '{config.js,contents.css,styles.js,adapters/**/*,lang/**/*,plugins/**/*,skins/**/*,vendor/**/*}',
to: resolvePath( distPath, 'js/ckeditor' ),
context: resolvePath( __dirname, '../../node_modules', 'ckeditor4' )
}
]
})
)
推荐阅读
- javascript - Javascript 复选框显示错误
- swift - 在 Swift 中比较日期忽略当前时区
- java - org.apache.http.ContentTooLongException:实体内容太长 [105539255] 对于配置的缓冲区限制 [104857600]
- javascript - 如何删除从数组中选择的元素
- php - 如何显示我的 html 邮件?
- ios - 找到不支持的类型 - AVMetadataObject
- oracle - 从 query.getResultList 检索类时出现 Hibernate ClassCastException
- javascript - 通过 AJAX 将复选框 id 发布到 php
- ios - 在表视图之外传递和访问对象数据
- asp.net - 我想在 asp.net webforms 项目中进行时间同步