ich wiederverwendbar schluck Aufgaben gemacht, da wir mehrere Frontend-Projekte alle mit großen Schluck hatte. Der beste Weg, den ich gefunden habe, war ein privates npm-Paket zu erstellen, das ich in den anderen Projekten mit seiner Git-URL hinzufüge.
Bauen Sie ein Node.js Modul von gemeinsam nutzbaren Aufgaben
Alles, was Sie brauchen, ist ein Repo mit einem index.js
und einem package.json
. Installieren Sie die erforderlichen Schluckabhängigkeiten und speichern Sie sie in der Paketdatei.
Exportieren Sie im index.js
die Funktionen, die Sie als Aufgaben verwenden möchten.
const gulp = require('gulp'),
gulpif = require('gulp-if'),
concat = require('gulp-concat'),
args = require('yargs').argv;
module.exports = {
concat: function(src, dest, options) {
return gulp.src(src)
.pipe(gulpif(args.prod, concat()))
.pipe(gulp.dest(dest));
}
};
Da dieses Modul werden die meisten Abhängigkeiten, die Aufgaben zu machen, erforderlich verwenden, wird Ihre anderen Projekte Abhängigkeiten auf das Minimum schrumpfen sie explizit benötigen.
Ihre Aufgaben Modul verwenden
Dann das Paket mit seiner git URL in Ihren anderen Projekten installieren.
npm install --save-dev git+ssh://[email protected]:onebitrocket/onebitrocket-gulp-utils.git
Dieses git URL-Format funktioniert auch mit yarn.
Und in Ihrem Projekt gulpfile.js
, verwenden Sie es einfach.
const gulp = require('gulp'),
onebitrocket = require('onebitrocket-gulp-utils');
// use a function which returns the result of your util.
gulp.task('js',() => onebitrocket.concat('src/**/*.js', 'www/'));
Hinweis: Es ist nicht nötig ist, das Paket zu dem npm Register zu veröffentlichen, um es zu benutzen. Alles, was Sie brauchen, ist Lesezugriff auf das Repo.
War meine Antwort auf irgendeine Hilfe? Wenn nicht, würden Sie uns etwas Feedback zu Ihren Bedürfnissen geben? Wenn Sie eine andere Antwort gefunden haben, sollten Sie sie schreiben und akzeptieren. –
Hallo Emile, ich habe angefangen, mir das anzuschauen und habe Fortschritte gemacht, aber ich musste das jetzt wegen der Arbeitsprioritäten verlassen, ich werde dich wissen lassen, wie es mir geht - danke, – onebitrocket