如何使用wiredep和gulp忽略路径的某些部分

时间:2015-08-21 04:35:28

标签: gulp wiredep

我正在创建Gulp任务,它将使用wiredep注入js和css。 以下是如何注射。

<!-- inject:js -->
<script src="/src/config/app.js"></script>
<!-- endinject -->

但我需要注入

<!-- inject:js -->
<script src="config/app.js"></script>
<!-- endinject -->

如何忽略'/ src /'?

这是我尝试过但没有用的。

Gulp任务在

之下
gulp.task('wiredep', ['styles'], function(){
    var options = {
        bowerJson: require('./bower.json'),
        directory:  './bower_components/',
        ignorePath: './src/'
        };
    var wiredep = require('wiredep').stream;
    return gulp
        .src(config.index)
        .pipe(wiredep(options))
        .pipe($.inject(gulp.src('./src/**/*.js')))
        .pipe(gulp.dest(config.dist));
});

谢谢, 卡什亚普

3 个答案:

答案 0 :(得分:0)

你没有说出你得到的结果,所以很难排除故障,但你所要做的就是完全匹配路径(除非你想使用正则表达式),所以你的情况应该可以解决问题;

ignorePath: '/src/'

答案 1 :(得分:0)

Wiredep用于将bower依赖注入html,我看到你必须要注入一般的js文件,也许它可以在下面正常工作:

gulp.task('inject', ['styles'], function(){
  var options = {
    ignorePath: 'src/',
    addRootSlash: false
  };
  return gulp
    .src(config.index)
    .pipe($.inject(gulp.src('./src/**/*.js'), options))
    .pipe(gulp.dest(config.dist));
});

希望这有帮助。

答案 2 :(得分:0)

您可以排除文件夹:

var options = {
...
exclude: [/\/src/],
...
};