C'è il plugin gulp-requirejs, ma è il blacklisted con il seguente messaggio: "usa direttamente il modulo require.js".Utilizzo del modulo di nodo requirejs optimizer con Gulp
I documenti sono piuttosto sparsi, come utilizzarli in combinazione con l'attività di generazione di Gulp?
Nel docs c'è un esempio:
var requirejs = require('requirejs');
var config = {
baseUrl: '../appDir/scripts',
name: 'main',
out: '../build/main-built.js'
};
requirejs.optimize(config, function (buildResponse) {
//buildResponse is just a text output of the modules
//included. Load the built file for the contents.
//Use config.out to get the optimized file contents.
var contents = fs.readFileSync(config.out, 'utf8');
}, function(err) {
//optimization err callback
});
Ma questo non mi aiuta molto ... Ecco la mia miglior prova:
var gulp = require('gulp'),
r = require('requirejs').optimize;
var config2 = {
baseUrl: 'src/js',
name: 'config',
out: 'dist/js/main-built.js'
};
gulp.task('scripts3', function() {
gulp.src(['src/js/**/*.js'])
.pipe(r(config)
.pipe(gulp.dest(config.out))
});
Ma il modulo requirejs non usa i flussi , quindi non funzionerà.
C'è anche lo stesso Gulp amd-optimize ma non è lo stesso di r.js, ancora.
gulp Beh non ho usato. Ma ho una buona conoscenza di RequireJS e grugnito e non grugnito ... Allora, cosa sono questi flussi, non possiamo usare come normale compito in gola? – Vishwanath
Gulp utilizza [Nodi stream] (https://nodejs.org/api/stream.html) e [vinyl] (https://github.com/wearefractal/vinyl). Il vinile è magia nera per me a questo punto, [qui] (https://medium.com/@contrahacks/gulp-3828e8126466) un ottimo post su di esso. Ho anche appena trovato [questo problema] (https://github.com/jrburke/r.js/issues/785) che tratta proprio questo. –
Potrei semplicemente eseguire il comando shell con gulp-shell. –