Gulp globbing找不到所有文件

时间:2015-09-26 05:52:16

标签: angularjs gulp glob

我有一个目录,我将Angular Partials放入其中。包含这些文件:

➜  partials: pwd
/home/dev/webapp/ui/public/partials
➜  partials: ls
connect-local.html  landing.html  login.html  profile.html  signup.html

我正在努力将它们连接起来并将它们缩小为Angulars Template Cache。我在我的gulpfile中有这个

//gulpfile.js

...

.pipe(plugins.usemin({
            templateCache: [
                gulp.src(['public/partials/*.html']),
                plugins.debug(),
                plugins.angularTemplatecache({
                    module: 'myApp',
                    root: 'partials/'
                }),
                'concat',
                plugins.rev()
            ]
        })))
        .pipe(gulp.dest('dist/'));

然而gulp.src只提取了我的一些文件,如gulp-debug所示:

[15:46:53] Starting 'build'...
[15:46:55] gulp-debug: ~/what/ui/public/partials/connect-local.html
[15:46:55] gulp-debug: ~/what/ui/public/partials/landing.html
[15:46:55] gulp-debug: ~/what/ui/public/partials/login.html
[15:46:55] gulp-debug: ~/what/ui/public/assets/javascript/templates.js
[15:46:55] gulp-debug: 4 items
[15:46:55] Finished 'build' after 1.29 s

我有什么遗失的吗?我成功之前使用过这段代码。有解决方法吗?它有点瘫痪我的申请atm

1 个答案:

答案 0 :(得分:1)

这是我的gulp构建,所以你可以比较,看看它是否有助于找到你缺少的东西:

'use strict';

var gulp = require('gulp');

var $ = require('gulp-load-plugins')({
  pattern: ['gulp-*', 'main-bower-files', 'uglify-save-license', 'del']
});

module.exports = function(options) {
  gulp.task('partials', function () {
    return gulp.src([
      options.src + '/{app,components}/**/*.html',
      options.tmp + '/serve/{app,components}/**/*.html'
    ])
      .pipe($.minifyHtml({
        empty: true,
        spare: true,
        quotes: true
      }))
      .pipe($.angularTemplatecache('templateCacheHtml.js', {
        module: 'myApp',
        root: '/'
      }))
      .pipe(gulp.dest(options.tmp + '/partials/'));
  });

  gulp.task('html', ['inject', 'partials'], function () {
    var partialsInjectFile = gulp.src(options.tmp + '/partials/templateCacheHtml.js', { read: false });
    var partialsInjectOptions = {
      starttag: '<!-- inject:partials -->',
      ignorePath: options.tmp + '/partials',
      addRootSlash: false
    };

    var htmlFilter = $.filter('*.html');
    var jsFilter = $.filter('**/*.js');
    var cssFilter = $.filter('**/*.css');
    var assets;

    return gulp.src(options.tmp + '/serve/*.html')
      .pipe($.inject(partialsInjectFile, partialsInjectOptions))
      .pipe(assets = $.useref.assets())
      .pipe($.rev())
      .pipe(jsFilter)
      .pipe($.ngAnnotate())
      .pipe($.uglify({ preserveComments: $.uglifySaveLicense })).on('error', options.errorHandler('Uglify'))
      .pipe(jsFilter.restore())
      .pipe(cssFilter)
      .pipe($.replace('../../bower_components/bootstrap/fonts/', '../fonts/'))
      .pipe($.csso())
      .pipe(cssFilter.restore())
      .pipe(assets.restore())
      .pipe($.useref())
      .pipe($.revReplace())
      .pipe(htmlFilter)
      .pipe($.minifyHtml({
        empty: true,
        spare: true,
        quotes: true,
        conditionals: true
      }))
      .pipe(htmlFilter.restore())
      .pipe(gulp.dest(options.dist + '/'))
      .pipe($.size({ title: options.dist + '/', showFiles: true }));
  });

  // Only applies for fonts from bower dependencies
  // Custom fonts are handled by the "other" task
  gulp.task('fonts', function () {
    return gulp.src($.mainBowerFiles())
      .pipe($.filter('**/*.{eot,svg,ttf,woff,woff2}'))
      .pipe($.flatten())
      .pipe(gulp.dest(options.dist + '/fonts/'));
  });

  gulp.task('other', function () {
    return gulp.src([
      options.src + '/**/*.*',
      '!' + options.src + '/**/*.{html,css,js,less}'
    ])
      .pipe(gulp.dest(options.dist + '/'));
  });

  gulp.task('clean', function (done) {
    $.del([options.dist + '/', options.tmp + '/'], done);
  });

  gulp.task('build', ['html', 'fonts', 'other']);

  gulp.task('build:clean',['clean'],function(){
    gulp.start('build');
  });
};