2016-07-31 3 views
0

Я пытаюсь использовать плагин gulp-inject, чтобы добавить js-файлы в файл индекса (Angular App).Gulp вводит выходы, но ни один из параметров не работает

Ниже приводится часть моего gulpfile.js:

var source = 'src/'; 
var index = source + 'index.html'; 
var js = [ 
    source + '**/*.module.js' 
    // More file paths 
]; 

gulp.task('injectJs', function() { 
    return gulp 
     .src(index) 
     .pipe($.inject(gulp.src(js, {addRootSlash: false, ignorePath: ['src/']}))) 
     .pipe(gulp.dest(source)); 
}); 

После того как я запустить задачу, вот часть в вопросе о результате index.html файла:

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

Согласно дополнительные параметры, заданные в задаче, вывод src должен быть «js/app.module.js».

Вещи, которые я попробовал, без изменения результата:

  • После некоторых предложений от плагина 'ignorePath' issue on github (click here)
  • Включая только один вариант (т.е. addRootSlash или ignorePath)
  • Использование {УХО: «JS 'переменной в строку (то есть вар JS = источник + '/ '} как единственный вариант
  • меняющегося' JS. **/* module.js')
  • Изменение ignorePath в строку (т.е. ignorePath:' ЦСИ/')

Не уверен, что не так, или что еще попробовать. Любая помощь будет оценена!

+0

можно передать параметры в 'gulp.src()' вместо 'впрыснуть()' ... –

+0

Хороший улов !! Пожалуйста, отправьте свое заключение в качестве ответа, чтобы я мог его принять. Благодаря! – Ali

ответ

0

попробовать это

var inject = require('gulp-inject'); 
var injectSrc = gulp.src([// your custom css path, 
          // your custom js path], {read: false}); 
var injectOptions = { 
    addRootSlash: false, 
    ignorePath: ['src/'] 
}; 

return gulp.src(index) 
    .pipe(inject(injectSrc, injectOptions)) // here is the inject-gulp 
    .pipe(gulp.dest(source)); 
Смежные вопросы