Rails 关于 require_self,求扫盲

cdredfox · July 09, 2012 · Last by Yujing_Z replied at July 13, 2012 · 5885 hits

谁能帮忙解说一下 require_self 的含义? 我之前一至理解的是,比如我有二个页面叫 test.html.erb,test1.html.erb 有个 layout 叫 application.html.erb。那么如果我在 application.css.scss 中如果加入 require_self 之后,我在执行 test.html.erb 时,就会加载对应的 test.css.scss.我在访问 test1.html.erb 时,就加载 test1.css.scss。 不过我今天试了一下,貌似不是这样的。加了 require_self 之后,并不会加入对应的 css.scss.

求扫盲~

require_self 是主要作用是改变代码顺序,在 js 有前后依赖关系或者 css 会覆盖样式时很有用

例如在 foo.css.scss

//= require a_css
//= require_self
//= require b_css

#id {
  color: red;
}

最后 foo.css.scss 编译出来就会像这样:

...
a_css 的内容
...

#id {
  color: red;
}

...
b_css 的内容
...

如果没有 require_self 就按代码顺序

哦,谢谢~那其实 require_self 其实是把当前所在文件中的内容填充到位置,相当于一个占位符一样?

You need to Sign in before reply, if you don't have an account, please Sign up first.