仅通过更改过的文件
仅传输已更改的文件 不再浪费宝贵的时间来处理未发生变化的文件。 默认情况下,它只能检测流中的文件是否发生了变化。如果您需要更高级的功能,例如知道导入/依赖项是否发生了变化,请创建自定义比较器,或者使用另一个插件。
npm install --save-dev gulp-changedimport gulp from 'gulp';
import changed from 'gulp-changed';
import ngAnnotate from 'gulp-ng-annotate'; // Just as an example
const SOURCE = 'src/*.js';
const DESTINATION = 'dist';
exports.default = () => (
gulp.src(SOURCE)
.pipe(changed(DESTINATION))
// `ngAnnotate` will only get the files that
// changed since the last time it was run
.pipe(ngAnnotate())
.pipe(gulp.dest(DESTINATION))
);类型: string | Function
目标目录。与放入 gulp.dest() 相同。
这需要用于将当前文件与目标文件进行比较。
也可以是返回目标目录路径的函数。
类型: object\ ##### cwd 类型: string\ \默认值: process.cwd() 相对于文件夹的工作目录。\ ##### extension 类型: string\ \目标文件的扩展名。\ \如果与原始文件不同,如下示例所示,这很有用: \ ```js
export const jade = () => (
gulp.src('src/**/*.jade')
.pipe(changed('app', {extension: '.html'}))
.pipe(jade())
.pipe(gulp.dest('app'))
);
```\ ##### hasChanged 类型: Function\ \默认值: compareLastModifiedTime\ \确定源文件是否与目标文件不同的函数。\ \ ##### 内置比较器\ \命名导入:\ - compareLastModifiedTime - 比较修改时间 (默认)\ - compareContents - 比较文件内容 (仅对未经转换的文件有用)\ \ ##### 示例
导入 {compareContents} 从 'gulp-changed' 中;
// 只有在文件被拷贝而不进行转换时,compareContents 才能正常工作
export const images = () => (
gulp.src('src/images/**/*')
.pipe(changed('dist/images', {h暂无开放 Issues,或尚未同步最近议题。