What exactly does .pipe() mean in gulp?

From the Node docs:

https://nodejs.org/api/stream.html#stream_readable_pipe_destination_options

The readable.pipe() method attaches a Writable stream to the readable, causing it to switch automatically into flowing mode and push all of its data to the attached Writable. The flow of data will be automatically managed so that the destination Writable stream is not overwhelmed by a faster Readable stream.

So in Gulp you can chain multiple tasks together using the pipe() method. Gulp makes use of streams. There are readable and writeable streams. Take the following snippet for example:

gulp.src(config.jsSrc)
    .pipe(uglify())
    .pipe(gulp.dest(config.dest + '/js'))
    .pipe(size());

gulp.src(...) turns the path at config.jsSrc into a readable stream of data that we are then piping to the gulp-uglify module. The uglify task returns a stream that we then pipe to our destination and so on…

Since a stream is usually a single file, some may be confused how Gulp is putting multiple files in the stream. Gulp actually uses streams in object mode:

gulp.src('*.js') reads all files ending in .js and emits each as an object on the stream.

Source: https://medium.com/gulpjs/gulp-sips-how-we-use-streams-d7790b22bf1a

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)