Gulp 大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口

Gulp 大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口,gulp,gulp-sass,Gulp,Gulp Sass,我已经为此辛劳了好几个小时了,我想我最好在转圈时得到一些帮助 我对使用Gulp比较陌生,但很高兴能这么做。我有一个非常简单的gulpfile.js设置,如下所示: var gulp = require('gulp'); var sass = require('gulp-sass'); gulp.task('sass', function () { gulp.src('./sass/**/*.scss') .pipe(sass()) .pipe(gulp.

我已经为此辛劳了好几个小时了,我想我最好在转圈时得到一些帮助

我对使用Gulp比较陌生,但很高兴能这么做。我有一个非常简单的gulpfile.js设置,如下所示:

var gulp = require('gulp');
var sass = require('gulp-sass');

gulp.task('sass', function () {
    gulp.src('./sass/**/*.scss')
        .pipe(sass())
        .pipe(gulp.dest('./css'));
    console.log("ran something");
});

gulp.task('watch', function () {
    gulp.watch('./sass/**/*.scss', ['sass']);
});
这一切执行得很好。然而,我的scss文件只有在我第一次执行gulp时才被编译。当我进行更改时,手表会识别所有更改,但不会进行进一步编译。这几乎就像文件在第一次启动后被锁定或缓存,或者发生了一些奇怪的事情

以下是cli输出:

[15:04:04] Starting 'watch'...
[15:04:04] Finished 'watch' after 11 ms
[15:04:12] Starting 'sass'...
ran something
[15:04:12] Finished 'sass' after 8.17 ms
从今天起,我运行的是64位Windows 10和全新安装的gulp和依赖项

我的主编辑器是PhpStorm,我在其中设置了运行gulp文件的配置。不过,我也尝试过使用基本文本编辑器,以及直接从节点命令提示符运行gulp


有什么想法吗?

看起来好像这个问题不是吞咽或以上任何设置的问题。我注意到,如果我在所有编辑器之外观看文件,它们确实是通过gulp更新的,只有我的编辑器在我停止gulp观看之前没有响应


我试用了PhpStorm 10的最新版本,它第一次运行得非常好,尽管其他方面没有改变。一定是版本8中的一个bug,当时似乎不存在Gulp。

似乎该问题不是Gulp或上述任何设置的问题。我注意到,如果我在所有编辑器之外观看文件,它们确实是通过gulp更新的,只有我的编辑器在我停止gulp观看之前没有响应


我试用了PhpStorm 10的最新版本,它第一次运行得非常好,尽管其他方面没有改变。一定是版本8中的一个bug,当时似乎不存在Gulp。

尽管我不在Windows 10上,但我无法重现这一点。如果您尝试通过返回流异步运行
'sass'
任务,即
返回gulp.src('./sass/***.scss'))
,会发生什么情况?抱歉,结果相同。我刚刚重新安装了nodejs,我注意到我不是最新的-仍然没有运气。如果我直接运行sass任务,它就可以正常工作。当通过watch任务访问它时,它是否会以某种方式成为路径问题?我恐怕不知道它是什么,因为我无法复制它。但我会给你一些建议,因为似乎没有其他人有任何想法。1) 尝试使用绝对路径而不是相对路径。2) 尝试使用而不是
gulp.watch()
。这就是我现在所能想到的。我试过吞咽手表,但同样的问题和绝对路径似乎也不起作用。我注意到,一旦停止gulp的运行,就会立即将文件(来自scss任务)更新为我的最新更改。这有助于缩小范围吗?虽然我不在Windows 10上,但我无法复制它。如果您尝试通过返回流异步运行
'sass'
任务,即
返回gulp.src('./sass/***.scss'))
,会发生什么情况?抱歉,结果相同。我刚刚重新安装了nodejs,我注意到我不是最新的-仍然没有运气。如果我直接运行sass任务,它就可以正常工作。当通过watch任务访问它时,它是否会以某种方式成为路径问题?我恐怕不知道它是什么,因为我无法复制它。但我会给你一些建议,因为似乎没有其他人有任何想法。1) 尝试使用绝对路径而不是相对路径。2) 尝试使用而不是
gulp.watch()
。这就是我现在所能想到的。我试过吞咽手表,但同样的问题和绝对路径似乎也不起作用。我注意到,一旦停止gulp的运行,就会立即将文件(来自scss任务)更新为我的最新更改。这有助于缩小范围吗?