5.gulp.dest()

gulp.dest()方法是用來寫文件的,其語法是:
gulp.dest(path[,options]);
path爲寫入文件的路徑;
options爲一個可選的對象,通常我們不需要用到;
要想使用好gulp.dest()這個方法,就要理解給它傳入的路徑參數與最終生成的文件的關係。
gulp的使用流程一般是這樣的:首先通過gulp.src()方法獲取到我們想要處理的文件流,然後把文件流通過pipe方法導入到gulp的插件中, 最後把經過插件處理後的流再通過pipe方法導入到gulp.dest()中,gulp.dest()方法則把流中的內容寫到文件中,這裏首先要弄清楚的一點是,我們給gulp.dest()傳入的路徑參數,只能用來指定要生成的文件的目錄,而不能用來指定生成文件的文件名,它生成的文件名是導入到它的文件流自身的文件名,所以生成的文件名是由導入到它的文件流決定的,即使我們給它傳入一個帶有文件名的路徑參數,然後它也會把這個文件名當作目錄名,例如:

var gulp = require('gulp');
gulp.task('html', function(){
    gulp.src('./src/html/a.html')
        .pipe(gulp.dest('./dist/aa.html'));
    //最終生成的文件路徑爲 dist/aa.html/a.html,而不是dist/a.html
});

想要改變文件名,可以使用插件gulp-rename
下面說說生成的文件路徑與我們給gulp.dest()方法傳入的路徑參數之間的關係:
gulp.dest(path)生成的文件路徑是我們傳入的path參數後面再加上gulp.src()中有通配符開始出現的那部分路徑。例如:

var gulp = reruire('gulp');
//有通配符開始出現的那部分路徑爲 **/*.js
gulp.src('script/**/*.js')
    .pipe(gulp.dest('dist')); //最後生成的文件路徑爲 dist/**/*.js
//如果 **/*.js 匹配到的文件爲 jquery/jquery.js ,則生成的文件路徑爲 dist/jquery/jquery.js
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章