gulp-sass没有结果

时间:2015-03-15 13:23:07

标签: node.js gulp gulp-sass

我正在尝试使用gulp和gulp-sass在我的项目中编译bower组件。我使用的是Windows 8。

我遇到的问题是gulp-sass似乎不起作用。或者至少不给我编译的结果。关于它的奇怪之处在于,我甚至不会收到错误消息或其他内容。

我只是在输出目录中得不到任何结果。

gulpfile.js:

"use strict";

var gulp = require("gulp"),
    sass = require("gulp-sass"),
    bowerFiles = require("main-bower-files"),
    gulpFilter = require("gulp-filter"),
    concat = require("gulp-concat");


gulp.task("bower", function () {
    var cssFilter = gulpFilter(["**/*.css", "**/*.scss"]);

    return gulp.src(bowerFiles())
        .pipe(cssFilter)
        .pipe(sass())
        .pipe(concat("bower.css"))
        .pipe(gulp.dest("wwwroot"))
        .pipe(cssFilter.restore());
});

到目前为止,我已尝试过几件事:

我尝试使用命令

通过命令行编译
sass --trace bower_components\bootstrap-sass-pfficial\assets\stylesheets\_bootstrap.scss:wwwroot\bower.css

这有效,我得到了预期的结果。因此我认为sass安装工作正常。

我尝试的另一件事是,我从上面的代码中删除了“.pipe(sass())”行,只是连接并复制文件。这很有用。

第三个测试是,不是使用main-bower-files来获取文件,而是使用带有sass的固定路径:

gulp.src("bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap.scss")

但那也没有用。再没有结果。

我使用以下依赖项:

"dependencies": {
    "gulp": "^3.6.0",
    "gulp-sass": "^1.3.3",
    "main-bower-files": "^2.6.2",
    "gulp-filter": "^2.0.2",
    "gulp-concat": "^2.5.2"
}

1 个答案:

答案 0 :(得分:0)

最后我发现了问题。 gulp-sass在版本1.3.1中引入了一个检查,通过检查文件开头的“_”(https://github.com/dlmanning/gulp-sass/commit/3fface49e956297bbd707ce4e148f7e727675417)来过滤部分内容。因为它没有编译_bootstrap.scss