我正在尝试在我的文件中导入几个SCSS
文件(page1.scss、page2.scss 和..),app.scss
但我没有找到任何解决方案(插件等)。
我看到了这些答案,但它们适用于 Ruby on Rails 而不是 libsass。我在用:
吞咽,
咕噜咕噜,
利伯萨斯和
Laravel 长生不老药
有什么解决办法吗?
我正在尝试在我的文件中导入几个SCSS
文件(page1.scss、page2.scss 和..),app.scss
但我没有找到任何解决方案(插件等)。
我看到了这些答案,但它们适用于 Ruby on Rails 而不是 libsass。我在用:
吞咽,
咕噜咕噜,
利伯萨斯和
Laravel 长生不老药
有什么解决办法吗?
正如您可以在官方 libsass 项目 github中的这个问题中找到的那样,glob不是 SASS 规范的一部分,因此没有计划在 libsass 中支持它们。
实现此功能的主要问题与导入文件的顺序有关。首先,AFAIK 没有标准方法来读取流文件在不同操作系统(linux、mac os x、windows)或文件系统(reiserfs、ext3、ntfs、fat32 等)中的行为方式,这会导致不可预测导入文件时排序。
无论如何,即使会有某种跨平台标准支持从每个文件系统读取文件,并且您确信您总是会以相同的顺序获取文件。应该是哪个顺序?
仍然有一些hack-y方法可以实现这种行为,但我强烈建议避免使用它们并遵循官方建议。
有一个红宝石:sass-globbing。但它不适用于 gulp/libsass,因为它们处理文件流的方式不同。受到这个 ruby-gem 的启发,有gulp-css-globbing。看起来这个项目有点过时了,但您可以自行承担使用它的风险。
在这篇博文中:使用 Gulp 导入 Sass 目录,您可以找到另一个解决方案,该解决方案涉及自动为每个文件夹创建一个文件,以导入其中的所有文件。我的口味有点复杂,但如果你真的需要这个,它会起作用。