【问题标题】:Gulp-Sass undefined variable -- Underline converting to dashGulp-Sass 未定义变量——下划线转换为破折号
【发布时间】:2016-09-16 15:46:11
【问题描述】:

这适用于一个文件夹,当我将 repo 克隆到另一个文件夹时,我收到此错误:

Error in plugin 'sass'
Message:
    app\scss\base\_fonts.scss
Error: Undefined variable: "$URL-PREFIX".
        on line 5 of app/scss/base/_fonts.scss
>>     src: url("#{$URL_PREFIX}media/fonts/Volkhov-Regular-webfont.eot");
   -------------^

知道为什么会说有错误:

"$URL-PREFIX"

代替:

"$URL_PREFIX"

代码中的实际内容是什么?

【问题讨论】:

  • 你在 npm install 之后试过了吗?
  • 是的,所有其他 gulp 任务都运行良好。
  • 对于 SASS 变量,连字符和下划线是可以互换的......奇怪,但是是的......根据文档:“由于历史原因,变量名(和所有其他 Sass 标识符)可以使用连字符和下划线可以互换。例如,如果您定义了一个名为 $main-width 的变量,则可以将其作为 $main_width 访问,反之亦然。"
  • 啊。感谢您的洞察力。它应该可以工作。即使我在此之前使用变量导入文件,它也无法识别,所以我想我必须进行更多故障排除.....

标签: compiler-errors sass gulp undefined gulp-sass


【解决方案1】:

看起来这对您的情况没有特别帮助,但如果其他人像我们一样看到这篇文章,我想分享一个可能的答案。

我们正在处理同样的错误。事实证明,当部分文件没有下划线前缀时,就会出现问题。

我唯一的猜测是,因为它没有前缀并且正在生成独立的 css,所以会抛出错误,因为变量不可用。

希望这对某人有所帮助。

【讨论】:

  • 用下划线前缀为我修复了它。我认为您对变量范围是正确的。谢谢!
猜你喜欢
  • 2013-04-29
  • 1970-01-01
  • 2017-08-18
  • 1970-01-01
  • 2010-11-19
  • 2023-03-05
  • 1970-01-01
  • 2013-04-01
  • 1970-01-01
相关资源
最近更新 更多