【问题标题】:Gulp-sass not finding variable in included files(s)?Gulp-sass 在包含的文件中找不到变量?
【发布时间】:2015-02-10 18:19:36
【问题描述】:

我有一个声明地图的 _variables.scss 文件:

$chord1: (
  color1: rgb(0, 155, 223), 
  color2: rgb(114, 191, 68), 
  color3: rgb(207, 9, 137), 
  color4: rgb(62, 83, 164)
);

$chord: $chord1;

我有第二个文件。 _globals.scss 我在哪里引用这个:

.myClass { color: map-get($chord, color1); }

我有一个作为 app.scss 的主 scss 文件,它 @imports 它们:

@import 'colors';
@import 'globals';

但是,gulp-sass 会根据该 map-get 引发错误 Error: invalid top-level expression

我在一个项目中使用 gulp-ruby-sass 并且它有效。但是,在这个项目中,我们使用的是 gulp-sass 1.1.0。我的吞咽任务是:

gulp.task('styles', function () {
   return gulp.src('./app/assets/sass/app.scss')
   .pipe(plumber())
   .pipe(sass({ style: 'expanded' }))
   .pipe(gulp.dest('./app/assets/css'))
   .pipe(reload({stream: true}));
});

这种事情在 gulp-sass 中不起作用吗?还是我做错了什么?

【问题讨论】:

    标签: node.js sass gulp gulp-sass


    【解决方案1】:

    一半猜测:导入工作正常,但 node-sass 不支持 Sass 3.3 附带的地图。

    https://github.com/sass/node-sass#reporting-sass-compilation-and-syntax-issues

    libsass 库目前的功能无法与大多数 Sass 用户将使用的 3.2 Ruby Gem 相提并论,并且几乎不支持 3.3 语法。虽然我们尽最大努力保持与 libsass 的功能对等,但我们无法启用尚未在 libsass 中实现的功能。

    【讨论】:

    • 可能是。我删除了我的地图,它编译了。
    猜你喜欢
    • 1970-01-01
    • 2016-03-08
    • 1970-01-01
    • 1970-01-01
    • 2017-04-09
    • 1970-01-01
    • 2018-10-19
    • 1970-01-01
    相关资源
    最近更新 更多