有一個1頁的網站。它由index.php
組成,其中包含許多部分(其他PHP文件)。每個部分都包含JavaScript文件的鏈接。使用Gulp縮小並編譯單個文件
問題:是有可能產生一個縮小的PHP文件中,將有一個鏈接到一個縮小的JS文件(類似於https://www.npmjs.com/package/gulp-sass
的東西)?
有一個1頁的網站。它由index.php
組成,其中包含許多部分(其他PHP文件)。每個部分都包含JavaScript文件的鏈接。使用Gulp縮小並編譯單個文件
問題:是有可能產生一個縮小的PHP文件中,將有一個鏈接到一個縮小的JS文件(類似於https://www.npmjs.com/package/gulp-sass
的東西)?
我自己設法解決了這個問題。它可以實現只用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:誰投了我的問題 - 你真的驚人。
不是開箱即用,但可以使用靜態站點生成器,如Jekyll,Harp。
這可能需要刪除類似液體的PHP模板,這樣Jekyll CLI可以解釋你的包含和一般頁面結構,並生成可通過gulp任務縮小的準備推送html文件。
在一個側面說明:如果你關心性能,縮小HTML很少被看作增益爲保證金的,特別是如果你的服務器已經gzip
啓用了。