Erstellen eines requireJS-Projekts mit Gulp - gulp-requirejs
Ich versuche es zu benutzengulp-requirejs ein Demo-Projekt zu bauen. Ich erwarte, dass das Ergebnis eine einzige Datei ist, in der alle Abhängigkeiten und Vorlagen von js enthalten sind. Hier ist meine gulpfile.js
var gulp = require('gulp');
var rjs = require('gulp-requirejs');
var paths = {
scripts: ['app/**/*.js'],
images: 'app/img/**/*'
};
gulp.task('requirejsBuild', function() {
rjs({
name: 'main',
baseUrl: './app',
out: 'result.js'
})
.pipe(gulp.dest('app/dist'));
});
// The default task (called when you run `gulp` from cli)
gulp.task('default', ['requirejsBuild']);
Die obige Build-Datei funktioniert ohne Fehler, aber die Datei result.js enthält nur den Inhalt von main.js und config.js. Alle Anzeigedateien, JQuery, Unterstrich und Backbone sind nicht enthalten.
Wie kann ich gulp-requirejs so konfigurieren, dass jede js-Vorlage in eine js-Datei eingefügt wird? Wenn es nicht der richtige Weg ist, können Sie bitte eine andere Methode vorschlagen?
Bearbeiten
config.js
require.config({
paths: {
"almond": "/bower_components/almond/almond",
"underscore": "/bower_components/lodash/dist/lodash.underscore",
"jquery": "/bower_components/jquery/dist/jquery",
"backbone": "/bower_components/backbone/backbone",
"text":"/bower_components/requirejs-text/text",
"book": "./model-book"
}
});
main.js
// Break out the application running from the configuration definition to
// assist with testing.
require(["config"], function() {
// Kick off the application.
require(["app", "router"], function(app, Router) {
// Define your master router on the application namespace and trigger all
// navigation from this instance.
app.router = new Router();
// Trigger the initial route and enable HTML5 History API support, set the
// root folder to '/' by default. Change in app.js.
Backbone.history.start({ pushState: false, root: '/' });
});
});
Die Ausgabe ist nur eine Kombination dieser beiden Dateien, was ich nicht erwartet habe.