SASS全局变量未传递给局部变量

基本上,我有一个曾经在3.0.x中完美工作的结构,现在它因undefined variable错误而中断

  • 部分
    • _base.css.sass
    • _header.css.sass
  • main.css.sass
  • application.css.sass

application.css.sass

//=require 'main'

main.css.sass

@import 'partials/base'
@import 'partials/header'

很简单的东西。

我收到一条错误消息,_header.css.sass 因为它使用了一个_base.css.sass

我以前没有这个错误,对我来说这没有意义,因为我们在导入_base.css.sass的同一上下文中在上导入这些变量_header.css.sass

我也必须_base.css.sass在每个部分上导入吗?什么是点main.css.sass需要全局变量,如果他们不能在你需要自己的谐音被使用?

如果我的结构完全错误,请给我另一种选择,我很乐意提出建议。

2020/03/23 14:30:04

显然,您必须使用application.css.sass清单作为清单,否则将无济于事。

基本上,您可以将所有内容分开,但是由于不共享作用域,因此需要从应用程序文件中调用它们。

如果你问我的话,有点太强制了。

Tom卡卡西2020/03/23 14:30:04

这是一个sass文件。使用@importapplication.css.sass的替代requirerequire适用于没有导入系统的普通CSS或模板引擎。

十三2020/03/23 14:30:04

我想我也遇到了同样的问题,而在@imports之前声明变量的方法有所帮助。希望这对某人有帮助=)。

阿飞神奇2020/03/23 14:30:04

您不能//=require用来包括诸如混入和变量之类的“动态” SASS内容,因为它们仅用于包括最“静态”的内容(如纯CSS)。您必须将中的@import所有文件application.css.sassRailscasts在第268集中对此做了很好的解释