Używam modułu gulp-order wraz z modułem strumieni zdarzeń i gulp-concat do łączenia plików javascript w jeden plik dest. Wtyczka "gulp-order" świetnie się sprawdziła w innych projektach, w których chciałem połączyć pliki ze strumienia w odrębnej kolejności. Z jakiegoś powodu w tym projekcie nie działa on prawidłowo, a pliki w katalogu publicznym/kątowym/config są rozproszone wśród plików, które określam jako konkatenacje jako ostatnie w katalogu public/js. Myślę, że może to mieć coś wspólnego z określeniem źródeł zwielokrotnionych, tj. katalogi kątowe i js. Próbowałem łączenie strumieni z modułem zdarzeń strumieni bez powodzenia, podczas gdy po raz pierwszy zaczął ja określił wielu źródeł przez przekazywanie tablicy do funkcji gulp.srcModuł węzła rzędu porządkowego z połączonymi strumieniami
gulp.src(['./public/angular/**/*.js', './public/js/*.js'])
Poniżej znajduje się kod używam teraz. Rurociągi i konkatenacji pracują dobrze, ale tak nie jest zgodnie ze specyfikacją:
var gulp = require('gulp');
var concat = require('gulp-concat');
var notify = require('gulp-notify');
var handleErrors = require('../util/handleErrors');
var jshint = require('gulp-jshint');
var ngmin = require('gulp-ngmin');
var order = require('gulp-order');
var es = require('event-stream');
function getStream(streamPath) {
return gulp.src(streamPath);
};
gulp.task('scripts', function() {
return es.merge(getStream('./public/angular/**/*.js'),getStream('./public/js/*.js'))
.pipe(order([
'./public/angular/config/*.js',
'./public/angular/services/**/*.js',
'./public/angular/modules/**/*.js',
'./public/angular/primitives/**/*.js',
'./public/js/**/*.js'
]))
.pipe(concat('app.js'))
.pipe(gulp.dest('./public/build/js'))
.on('error', handleErrors);
});
sam problem i to było wczoraj pracę i teraz nie jest. – Nick
Hej @Nick Zrzuciłem moduł zamówień i zacząłem używać streamqueue. Działa świetnie, możesz to sprawdzić na moim github https://github.com/dtothefp/gulp-angular-foundation/blob/master/gulp/tasks/scripts.js – dtothefp
Okazuje się, że jestem dummusem, zmieniłem nazwy plików .. nic dziwnego, że były nieczynne !!! BTW możesz to zrobić przy zamówieniu lub po prostu użyj gulp.src ([file1, file2, file3 *]). Nie sądzę, żeby streamqueue było konieczne. – Nick