2017-09-01 84 views
-1

有一個1頁的網站。它由index.php組成,其中包含許多部分(其他PHP文件)。每個部分都包含JavaScript文件的鏈接。使用Gulp縮小並編譯單個文件


問題:是有可能產生一個縮小的PHP文件中,將有一個鏈接到一個縮小的JS文件(類似於https://www.npmjs.com/package/gulp-sass的東西)?

回答

1

我自己設法解決了這個問題。它可以實現只用2個工具所期望的結果:

隨着CONCAT我能來連接所有* .js文件到logic.js這樣的:

gulp.task('scripts', function() { 
    return gulp.src('src/**/*.js') 
     .pipe(concat('logic.js')) 
     .pipe(uglify()) 
     .pipe(gulp.dest('dist/js')); 
}); 

With ghfi我能夠包括所有包含PHP的,然後縮小結果到一個單一的index.php

gulp.task('php', function() { 
    gulp.src('src/index.php') 
     .pipe(gulpHandlebarsFileInclude()) 
     .pipe(htmlmin({ 
      collapseWhitespace: true 
     })) 
     .pipe(gulp.dest('dist')); 
}); 

必須包括兒童PHP文件indside父一個這樣的:

{{ fileInclude 'src/foo.php' }}

PS:誰投了我的問題 - 你真的驚人

1

不是開箱即用,但可以使用靜態站點生成器,如Jekyll,Harp。

這可能需要刪除類似液體的PHP模板,這樣Jekyll CLI可以解釋你的包含和一般頁面結構,並生成可通過gulp任務縮小的準備推送html文件。

Jekyll

Harpjs

gulp-htmlmin

在一個側面說明:如果你關心性能,縮小HTML很少被看作增益爲保證金的,特別是如果你的服務器已經gzip啓用了。

相關問題