我有以下设置:
app/assets/stylesheets/application.css.scss
/*
*= require_self
*= require fancybox
*/
/* COLORS.. */
/* MIXINS... */
/* FONT STACKS... */
/* IMPORTS */
@import "reset";
@import "supergrid";
@import "rails";
@import "app";
@import "forms";
@import "layout";
在我的各个部分中,我遇到了资产路径的真正问题。当在application.css.scss
内或清单加载的任何内容时,我可以使用:
.example { background-image: image-path("background.png"); }
但是,当我使用部分内容时,例如my _layout.css.scss
partial,当我尝试同样的事情时,只会从编译文件中省略background-image属性。似乎SCSS资产助手在部分内部不可用?
有没有人让这个工作,我错过了一些明显的东西?或者是不可能在部分中使用资产助手?如果是这样,这是一个主要的主要问题,因为我的整个应用程序结构依赖于SCSS变量和部分之间共享的mixins。
我知道变量和mixin不在sprockets清单中共享,所以如果partials无法访问资产助手,那么我正在考虑将所有内容连接到一个scss文件中,这几乎击败了两个Sass的目的和链轮。
非常感谢任何帮助!
答案 0 :(得分:10)
奇怪,它应该工作..只是一些想法:
image-path('background.png')
替换为asset-url('background.png', image)
或image-url('background.png')
require_self