2017-09-01 47 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启用了。

相关问题