从grunt指南针切换到libsass时出错

时间:2015-05-05 17:32:10

标签: gruntjs compass libsass

我正在努力从grunt-contrib-compass转移到grunt-sass。我看到libsass编译器在main.scss文件中的某些导入失败了。

这是main.scss

@import "breakpoint";
@import "compass/css3";
@import "compass/css3/user-interface";
@import "compass/css3/transform";
@import "compass/utilities/general/clearfix";

这是运行sass任务时抛出的错误:

file to import not found or unreadable: breakpoint
Current dir: example/styles/
Line 1  Column 9  example/styles/main.scss

是否有人熟悉从指南针切换到libsass是否知道这些导入的等价物是否可以作为替换进入?

1 个答案:

答案 0 :(得分:0)

您需要更新breakpoint的导入路径,以指向_breakpoint.scss所在的位置。

grunt-contrib-compass有一个importPath选项(例如importPath: '/bower_components'),

  

使Sass的@import可以找到指定文件夹下的文件   指令

由于已从gruntfile中删除,因此您现在应使用完整路径导入它:

@import "/bower_components/breakpoint/breakpoint";

编辑:libsass有一个类似的选项'loadPath',它采用一系列路径来搜索@import的文件。

grunt.initConfig({
  libsass: {
    options: {
      loadPath: ['my/load/path']
    },
    files: {[
        {
            expand: true,
            cwd: 'my/src/dir',
            src: ['**/*.scss'],
            dest: 'dist',
            ext: '.css'
        }
    ]},
  }});

您的libsass新配置将包含

如果您选择不这样做,则需要像对待罗盘一样全局安装断点。

gem "breakpoint", "~>2.4.0"