在Rails的生产中使用Bootstrap皮肤预编译问题的CKEditor 4

tin*_*ian 7 ruby-on-rails ckeditor

我试图在rails 4中使用ckeditor的bootstrap皮肤.所有在开发中工作正常,但我在生产中得到一个预编译错误.

我添加了ckeditor gem(https://github.com/galetahub/ckeditor).然后从(https://github.com/Kunstmaan/BootstrapCK4-Skin/tree/master/skins/bootstrapck)下载引导皮肤

我在vendor/assests/javascript/ckeditor/skins中添加了皮肤内容

并将ckeditor添加到预编译数组中.Rails.application.config.assets.precompile + =%w(ckeditor/*)

在预编译资产中,我得到Sass :: SyntaxError:Undefined variable error.

在皮肤文件夹中有一些scss文件,例如vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_colorpanel.scss,它们有变量,例如在上面提到的文件中有变量的颜色,如$ grey(来自bootstrap我想).

我认为供应商文件夹中的scss文件无法从预编译任务中的app/assets访问变量和其他scss.

任何想法如何解决这个问题,或者这实际上是在供应商文件夹中添加额外皮肤的正确方法?

rails 4.1.4 sass-rails 4.0.4 ckeditor 4.1.1

感谢任何帮助.

小智 3

你可以加

@import "../config/config";
Run Code Online (Sandbox Code Playgroud)

在大多数部分的顶部

vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/
Run Code Online (Sandbox Code Playgroud)

@import "colors";
Run Code Online (Sandbox Code Playgroud)

在顶端

vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/config/_defaults.scss
Run Code Online (Sandbox Code Playgroud)

使其发挥作用。

它不是很 DRY,但至少皮肤资源会预编译。