通过 webpack 将 CKEditor 4 与 Rails 6 集成

Integration CKEditor 4 with Rails 6 via webpack

我必须升级使用 CKEdtior 的文本编辑器功能的遗留应用程序。

由于 ckeditor 的 Ruby gem 不再维护得很好,而且 Rails 6 似乎是个问题,所以我决定直接使用 webpacker。
我使用 yarn add 命令添加了 ckeditor v 4,然后在我的应用程序中导入 js 文件。js/active_admin.js 文件。 (import "ckeditor4";)
根据文档,我还必须设置一个 CKEDITOR_BASEPATH 常量。该常量应指向ckeditor文件所在的路径。
为了拥有这些文件,我已经使用以下附加设置配置了 webpacker:environment.config.set('output.libraryTarget', 'umd')

我认为这会在我的 public/packs/js 文件夹中创建一个 ckeditor 目录,但它不起作用。我怎样才能让 webpack 创建这个 folded/files?

我通过添加 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' )
            }
        ]
    })
)