Meine Angular
Anwendung hat die folgende StrukturWie man injizierte Dateien mit Gulp bestellt?
- src/app/main/
|
-main.js
-main.controller.js
-index.html
ich Gulp bin mit. Nach Abschluss des Builds werden die *.js
Dateien in der falschen Reihenfolge in index.html
Dateien injiziert. Die Datei main.js
hängt von main.controller.js
ab, daher muss main.controller.js
vor main.js
eingespritzt werden.
<!-- build:js({.tmp/serve,.tmp/partials,src}) scripts/app.js -->
<!-- inject:js -->
<script src="app/main/main.js"></script>
<script src="app/main/main.controller.js"></script>
<script src="app/index.js"></script>
<!-- endinject -->
Das ist mein gulpfile.js
'use strict';
var gulp = require('gulp');
var gutil = require('gulp-util');
var wrench = require('wrench');
var options = {
src: 'src',
dist: 'dist',
tmp: '.tmp',
e2e: 'e2e',
errorHandler: function(title) {
return function(err) {
gutil.log(gutil.colors.red('[' + title + ']'), err.toString());
this.emit('end');
};
},
wiredep: {
directory: 'bower_components',
exclude: [/jquery/, /bootstrap-sass-official\/.*\.js/, /bootstrap\.css/]
}
};
wrench.readdirSyncRecursive('./gulp').filter(function(file) {
return (/\.(js|coffee)$/i).test(file);
}).map(function(file) {
require('./gulp/' + file)(options);
});
gulp.task('default', ['clean'], function() {
gulp.start('build');
});
Es ist nicht nur für ein angularjs-Projekt spezifisch, es könnte für jedes js-Projekt gelten. Eine Lösung ist 'gulp.src (['main.js', 'main.controller.js', 'irgendein_ordner/*. Js,' irgendein_other/**/*. Js ''])' –