Angenommen, Sie underscore.js
erstellen ein Projekt auf Backbone oder was auch immer und müssen Skripte in einer bestimmten Reihenfolge laden, z. B. müssen sie zuvor geladen werden backbone.js
.
Wie kann ich die Skripte so zusammenfassen, dass sie in Ordnung sind?
// JS concat, strip debugging and minify
gulp.task('scripts', function() {
gulp.src(['./source/js/*.js', './source/js/**/*.js'])
.pipe(concat('script.js'))
.pipe(stripDebug())
.pipe(uglify())
.pipe(gulp.dest('./build/js/'));
});
Ich habe die richtige Reihenfolge der Skripte in meinem source/index.html
, aber da die Dateien in alphabetischer Reihenfolge organisiert sind, konzentriert sich gulp underscore.js
danach backbone.js
und die Reihenfolge der Skripte in meinem source/index.html
spielt keine Rolle. Es werden die Dateien im Verzeichnis angezeigt .
Hat jemand eine Idee dazu?
Beste Idee , die ich habe , ist die Kreditoren Skripte umbenennen 1
, 2
, 3
ihnen die richtige Reihenfolge zu geben, aber ich bin nicht sicher , ob ich so.
Als ich mehr erfuhr, fand ich, dass Browserify eine großartige Lösung ist. Es kann zunächst schmerzhaft sein, aber es ist großartig.
require
im Front-End zu verwenden, denn wenn Sie npm auf Ihrer Serverseite verwendet haben, sehen Sie natürlich, wie Sie Module benötigen können, aber browserify ermöglicht es Ihnen, dies auf dem clientseitigen Code zu tun Um loszulegen, muss man ein wenig basteln, aber es befindet sich hauptsächlich in package.json und wenn Sie es mit gulp.js oder grunt.js verwenden möchten. Wenn Sie das gulp / grunt browserify-Paket installieren, können Sie gulp/grunt browserify
Ihr Skript ausführen und in ein Hauptskript verwandeln. Dies ist eine leichte Lernkurve, aber es lohnt sich IMO.
browserify
für Angular
Module nicht wirklich benötigen , bei denen einfache Verkettung funktioniert und die Reihenfolge keine Rolle spielt :)