Node.js: wie gebe ich einer globalen variable in eine Datei eingefügt werden durch require()?

Habe ich spaltete meine gulpfile.js in mehrere Dateien in einem /gulp Ordner zum organisieren der code ein wenig besser. Aber jetzt will ich übergeben Sie eine variable debug (boolean) in den Dateien, Schaltverhalten des gulp-Befehl aufgenommen wird (schließlich werde ich verwenden Kommandozeilen-Argumente, aber für jetzt möchte ich nur machen, damit es funktioniert mit einer Variablen).

Dem Weg habe ich dieses setup, mit einer Methode, die ich sah in einem yeoman eckig/gulp-Paket, ist mit einem npm-Modul namens require-dir (die lädt alle *.js-Dateien in der /gulp Ordner, wo jeder hat eine Reihe von gulp Aufgaben, die festgelegt sind).

gulpfile.js:

var gulp = require('gulp'),
  run = require('run-sequence'),
  debug = true;

require('require-dir')('./gulp');

gulp.task('default', ['build', 'server', 'watch', '...']);

Dem laden würde so etwas wie...

gulp/build.js:

var gulp = require('gulp'), 
  plumber = require('gulp-plumber'),
  ...;

gulp.task('build', function () {
  console.log(debug);
});

So, wenn ich den Befehl ausführen gulp, läuft die default Aufgabe, wird es zu laden build.js und dann führen Sie die build Schluck Aufgabe. Aber leider, es scheint, dass debug gibt Sie undefined zurück.

Wie bekomme ich diese zu arbeiten?

War ich auf der Suche mit nur module.exports() und Knoten require() Methode, aber ich konnte nicht herausfinden, wie man die gulp-task innerhalb der include-Datei deklariert, so dass es dann von der Haupt - gulpfile.js - Datei (in der gewünschten Reihenfolge).

Kann mir jemand etwas Hilfe? Dank

InformationsquelleAutor BuildTester1 | 2014-11-19
Schreibe einen Kommentar