【问题标题】:Compass Sprites Error: undefined method `unpack' for nil:NilClass`指南针精灵错误:nil:NilClass 的未定义方法“解包”
【发布时间】:2014-08-12 11:38:22
【问题描述】:

我正在尝试使用 Compass/SASS 生成精灵并收到以下错误:

NoMethodError on line ["21"] of /Library/Ruby/Gems/2.0.0/gems/chunky_png-1.3.1/lib/chunky_png/chunk.rb: undefined method 'unpack' for nil:NilClass

我的图标都在images/icons。这是我的_sprites.scss 部分:

@import "compass/utilities/sprites";
@import "icons/*.png";
@include all-icons-sprites;

我的指南针config.rb:

http_path = "../../www"
css_dir = "../../www/css"
sass_dir = "../../www/sass"
images_dir = "../../www/images"
javascripts_dir = "../../www/js"
output_style = :compressed

我做错了什么?

如果这有什么不同,我在 Mac 上。

【问题讨论】:

    标签: ruby sass compass-sass css-sprites


    【解决方案1】:

    这是由于 Compass 无法读取图像文件造成的。

    我通过ImageOptim 运行了所有图标,现在精灵生成工作正常。 Another answer 建议使用 optipng(捆绑在 ImageOptim 中)——这在 Windows 或 Linux 上可能是更好的解决方案。

    【讨论】:

      【解决方案2】:

      我停止了指南针编译操作 (CNTRL + C),然后在尝试再次运行它时发生了这种情况。能够通过删除生成的精灵文件并运行“compass clean”并随后运行“compass compile”命令来解决它。我猜精灵图像是由于中断进程而损坏的。

      【讨论】:

        【解决方案3】:

        我也有同样的问题。就我而言,这是精灵丢失了一张图像。添加回来后,一切正常。这很有趣,因为通常 Sass 总是这样说,但在这种情况下,Sass 决定说它就像“nil:NilClass 的未定义方法 `unpack'”。

        希望对某人有所帮助。

        【讨论】:

          猜你喜欢
          • 2012-06-11
          • 2013-06-11
          • 1970-01-01
          • 1970-01-01
          • 2012-09-07
          • 2013-07-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多