我对Gulp还比较陌生,但是通过遵循这篇教程,我设置了一个Gulp任务,目的是把特定目录下的JavaScript文件进行Browserify处理,并将它们传输到另一个目录 - 非常简单。我看了几个其他的教程,但这种方法似乎最为简明扼要。以下是我的代码:
var gulp = require('gulp');
var browserify = require('browserify');
var transform = require('vinyl-transform');
gulp.task('js', function() {
var browserified = transform(function(filename) {
return browserify(filename).bundle();
});
return gulp.src(['./public/js/src/**/*.js'])
.pipe(browserified)
.pipe(gulp.dest('./public/js/dist'));
});
上面的代码与我看到的许多其他实现非常相似,但是当我尝试使用“gulp js”运行它时,会产生以下错误:
[15:47:13] Using gulp file
~/development/launchpad/workshop/gulpfile.js
[15:47:13] Starting 'js'...
_stream_readable.js:540
var ret = dest.write(chunk);
^
TypeError: undefined is not a function
at Producer.ondata (_stream_readable.js:540:20)
at Producer.emit (events.js:107:17)
at Producer.Readable.read (_stream_readable.js:373:10)
at flow (_stream_readable.js:750:26)
at resume_ (_stream_readable.js:730:3)
at _stream_readable.js:717:7
at process._tickCallback (node.js:355:11)
有人知道可能是什么原因导致这个错误吗?
(顺便说一下,我想查看堆栈跟踪中的文件,以尝试弄清楚这里发生了什么,但在Spotlight中搜索_stream_readable.js会产生大约20个该名称的文件,所有这些文件似乎都是Node模块。是否有一种方法可以确定堆栈跟踪中文件的完整路径?)