我的目录中的文件:
1-icon.svg2- icon.svg3-icon.svg10 icon.svg11-icon.svg12 icon.svg20 icon.svg21 icon.svg22 icon.svgGulp src将它们读作:
1-icon.svg10 icon.svg11-icon.svg12 icon.svg…
是的,可以订购与字符串相同的gulp命令文件。要管理您可以使用的订购 gulp-sort 插入。这是一个例子,我已经完成了
gulp-sort
const gulp = require('gulp'), debug = require('gulp-debug'), sort = require('gulp-sort'), path = require('path'); gulp.task('ordering', function() { return gulp.src('./test/*') .pipe(debug()) .pipe(sort(customComparator)) .pipe(debug()) .pipe(gulp.dest('./dist')); }); function customComparator(f1, f2) { const f1Name = path.basename(f1.path); const f2Name = path.basename(f2.path); return Number(f1Name.split('-')[0]) > Number(f2Name.split('-')[0]) ? 1 : -1; }
看一眼 customComparator 获取文件名的第一部分并在此基础上创建订单的函数。
customComparator
该 gulp-debug 插件仅用于查看控制台中文件的顺序。因此,结果如下。您可以在订购之前和之后查看文件列表
gulp-debug
$ npx gulp ordering [18:54:27] Using gulpfile ~/own_projects/untitled/gulpfile.js [18:54:27] Starting 'ordering'... [18:54:27] gulp-debug: test/1-icon.svg [18:54:27] gulp-debug: test/10-icon.svg [18:54:27] gulp-debug: test/11-icon.svg [18:54:27] gulp-debug: test/12-icon.svg [18:54:27] gulp-debug: test/2-icon.svg [18:54:27] gulp-debug: test/20-icon.svg [18:54:27] gulp-debug: test/21-icon.svg [18:54:27] gulp-debug: test/22-icon.svg [18:54:27] gulp-debug: test/3-icon.svg [18:54:27] gulp-debug: 9 items [18:54:27] gulp-debug: test/1-icon.svg [18:54:27] gulp-debug: test/2-icon.svg [18:54:27] gulp-debug: test/3-icon.svg [18:54:27] gulp-debug: test/10-icon.svg [18:54:27] gulp-debug: test/11-icon.svg [18:54:27] gulp-debug: test/12-icon.svg [18:54:27] gulp-debug: test/20-icon.svg [18:54:27] gulp-debug: test/21-icon.svg [18:54:27] gulp-debug: test/22-icon.svg [18:54:27] gulp-debug: 9 items [18:54:28] Finished 'ordering' after 72 ms