我怎样才能让一个目录一直在监听?
How can I make a directory always listening?
我使用 gulp.js
来缩小、压缩、优化我的静态文件。现在我有一个包含所有用户头像的目录。当用户注册时,我的 PHP 代码会为他生成一个头像,然后 copy/paste 将其放入该目录。
一个头像的大小将近20kb。我每次都可以在该目录上手动调用此任务以减小图像(头像)大小:
const gulp = require('gulp');
const imagemin = require('gulp-imagemin');
gulp.task('compress_avatars', () =>
gulp.src('pure/img/avatars/*')
.pipe(imagemin())
.pipe(gulp.dest('product/img/avatars'))
);
它的效果很好,使图像的大小接近 3kb。一切都很好。现在我想知道,怎样才能让它自动(实时收听)?我的意思是,当将图像添加到此目录时,我需要自动减小其大小 (无需每次手动执行 gulp compress_avatars
) ?
您可以使用 gulp.watch
而不是 gulp.src
来检查此目录中的任何更改并压缩您的头像文件。
const gulp = require('gulp');
const imagemin = require('gulp-imagemin');
gulp.task('compress_avatars', () =>
gulp.watch('pure/img/avatars/*', {ignoreInitial: false})
.pipe(imagemin())
.pipe(gulp.dest('product/img/avatars'))
);
你必须知道这个任务不会停止,直到你发送一个Ctrl-c(SIGINT
信号),但是如果你关闭终端你就会关闭任务!
我使用 gulp.js
来缩小、压缩、优化我的静态文件。现在我有一个包含所有用户头像的目录。当用户注册时,我的 PHP 代码会为他生成一个头像,然后 copy/paste 将其放入该目录。
一个头像的大小将近20kb。我每次都可以在该目录上手动调用此任务以减小图像(头像)大小:
const gulp = require('gulp');
const imagemin = require('gulp-imagemin');
gulp.task('compress_avatars', () =>
gulp.src('pure/img/avatars/*')
.pipe(imagemin())
.pipe(gulp.dest('product/img/avatars'))
);
它的效果很好,使图像的大小接近 3kb。一切都很好。现在我想知道,怎样才能让它自动(实时收听)?我的意思是,当将图像添加到此目录时,我需要自动减小其大小 (无需每次手动执行 gulp compress_avatars
) ?
您可以使用 gulp.watch
而不是 gulp.src
来检查此目录中的任何更改并压缩您的头像文件。
const gulp = require('gulp');
const imagemin = require('gulp-imagemin');
gulp.task('compress_avatars', () =>
gulp.watch('pure/img/avatars/*', {ignoreInitial: false})
.pipe(imagemin())
.pipe(gulp.dest('product/img/avatars'))
);
你必须知道这个任务不会停止,直到你发送一个Ctrl-c(SIGINT
信号),但是如果你关闭终端你就会关闭任务!