Gulp:useref多个PHP文件

时间:2016-04-04 00:42:16

标签: javascript php html5 css3 gulp

我最近在我的一个网站上开发了第二页,我把它放在我的项目文件夹中,这样就可以像访问www.mysite.com/projects"我的目录如下所示:

|js
|css
|projects - has index.php 
|img
index.php
mailer.php

我的Gulp文件:

I used Gulp useref like this:
gulp.task('useref', function(){
  return gulp.src('app/*.php')
    .pipe(useref())
        // Minifies only if it's a JavaScript file
    .pipe(gulpIf('*.js', uglify()))
    .pipe(gulp.dest('dist'))
    // Minifies only if it's a CSS file
    .pipe(gulpIf('*.css', cssnano()))
    .pipe(gulp.dest('dist'))

});

但是当我执行命令来运行useref时,它不会在项目中使用php文件或将文件夹移动到我的dist文件夹。我试过像return gulp.src('app/**/*.php')这样做,但这也不起作用。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我觉得你这里有一些倒退的东西。你必须管道使用你的索引文件。这意味着您的源不是您应用中的每个php文件,但

gulp.src('your_Path/index.html')

然后,您必须告诉useref在哪里查找index.html中引用的所有文件:

.pipe(useref({
    searchPath: 'app/' // I'm guessing this is the path
}))

此外,在这种情况下,您只需要一个 dest 。这使你的任务:

gulp.task('useref', function(){

  return gulp.src('your_Path/index.html') // Check this path
     .pipe(useref({
         searchPath: 'app/' // Check this path
     }))
    // Minifies only if it's a JavaScript file
    .pipe(gulpIf('*.js', uglify()))
    // Minifies only if it's a CSS file
    .pipe(gulpIf('*.css', cssnano()))
    .pipe(gulp.dest('dist'))

});