css - Assets 管道 sass 导入不起作用

标签 css ruby-on-rails sass asset-pipeline

我正在使用 sass imports 来处理我们的 rails 3.2 应用程序的大部分样式。我的 application.css.scss 文件如下所示:

应用程序.css

/*
 *= require_self
 *= require_tree ./vendor
 *= require admin
 */

admin.css.scss

// Reset
@import "global/reset";

// General Variables
@import "admin/general/_variables";

// Main Elements
@import "admin/general/_typography";

// Layout
@import "global/_layout";
@import "admin/general/_gridset";

// Modules
@import "admin/modules/_table";
@import "admin/modules/_forms";
@import "admin/modules/_buttons";

// Styles
@import "admin/_style-clean";
@import "admin/_style-images";

// Features
@import "admin/features/features";

错误信息:Sass::SyntaxError - undefined variable :“$body-bg”。 (在/var/www/apps/dev_wbs/releases/20130624191222/app/assets/stylesheets/admin/_style-clean.css.scss)

_variables.css.scss(导入)包含$body-bg,并在_style-clean.css.scss中引用

我最初在 sass 语法中有这个,但每次我们推送到开发服务器时,我们都会收到 Sass::SyntaxError - Undefined variable: "$body-bg"的错误。变量在variables文件中声明,错误来自_style-clean scss文件。我已将此变量放入 style-clean 文件中,但随后出现另一个变量错误,但它指的是排版文件中的一个变量,它位于 style-clean 之上,这让我不知何故认为 Assets 正在预先-编译后添加。

我想回到使用 sass 语法,但是 scss 和 sass 都会抛出变量错误。

所有单个文件当前的格式为:_variables.css.scss。

如有任何帮助,我们将不胜感激!

最佳答案

Assets 管道依靠 application.css 告诉它要包含哪些文件。将其更改为 SASS 可能无法正常工作。

此外,您的 application.css 需要告诉 Ruby 在哪里寻找文件:

/*
 * This is a manifest file that'll be compiled into application.css, which will include     all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
 * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the top of the
 * compiled file, but it's generally better to create a new file per style scope.
 *
 *= require_self
 *= require_tree .
 */

如果您将问题中粘贴的代码放入一个新文件(如 global.css.scss)并在 /app/assets/stylesheets/ 中重新创建 application.css > 你应该同时使用上面的代码和 SASS 样式来参加比赛。

关于css - Assets 管道 sass 导入不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17283028/

相关文章:

css - 更改 Kendo UI Validator 的位置

jquery - 如果 url 包含其中一个字符串,则将 css 添加到头部

html - CSS 位置固定了一些;我希望它位于绝对底部,而 body 位于它的正上方

javascript - Html 问题 Iframe,Canvas

ruby-on-rails - 从数组中检索 x 个随机元素

mysql - 使用什么索引进行查询

ruby-on-rails - Rails 按列分组并选择列

css - 在 safari 中设置焦点输入的样式

sass - 从node_modules导入SASS局部

ruby-on-rails - Rails 为 MIME 类型错误的 .otf 文件提供服务。应用程序/vnd.oasis.opendocument.formula-template