2015-04-17 41 views
0

我使用generator-gulp-webapp并有27个html文件编译到.tmp文件夹。我发现在gulp-useref任务中,只有前25个html文件将被处理并传递到dist文件夹。这里是gulpfile.coffee的代码,真的需要知道如何解决这个问题,谢谢。gulp-useref忽略文件,如果有超过25个文件

gulp.task 'views', -> 
    gulp.src [ 
     '!app/mixins/**/*.jade' 
     '!app/layouts/**/*.jade' 
     '!app/partials/**/*.jade' 
     'app/**/*.jade' 
    ], base: 'app' 
    .pipe $.data (file) -> 
     return JSON.parse fs.readFileSync '.tmp/data.json' 
    .pipe $.jade 
     pretty: true 
     basedir: 'app/' 
     compileDebug: true 
    .on 'error', (err) -> 
     $.notify 
     title: 'Jade compile failed.', 
     sound: 'Sosumi' 
     .write err.message 
    .pipe gulp.dest '.tmp' 

gulp.task 'htmlProcess', ['views', 'styles', 'scripts', 'compass'], -> 
    assets = $.useref.assets 
    searchPath: ['.tmp', 'app', '.'] 

    gulp.src ['app/**/*.html', '.tmp/**/*.html'] 
    .pipe assets 
    .pipe assets.restore() 
    .pipe $.useref() 
    .pipe gulp.dest 'dist' 
+0

你能告诉我们你的原始文件吗? – ddprrt

+0

对不起,我无法向您显示这些文件,因为它是我客户的私人项目。这是原始的[gulpfile.coffee](https://gist.github.com/judewang/efc57ce38cf31e202f94),我发现如果我删除属于'htmlProcess'的一个或两个任务,那么它可以编译所有文件而不会丢失。 – Jude

回答

0

我能够得到一个工作测试用例来复制这个问题。我相信我已经找到了解决办法。查看最新版本的repo或等待下一个版本发布在npm上。

https://www.npmjs.com/package/gulp-useref

+0

此问题的状态如何?我们正在使用3.1.2版本,问题依然存在。 – mkorszun

+0

据我所知,已经解决了。回购中有通过测试。如果您可以提供失败的测试或减少的测试用例,这将有所帮助。 – jonkemp