Скажем, например, вы строите проект на Backbone или что-то еще, и вам нужно загружать скрипты в определенном порядке, например, underscore.jsнужно загружать раньше backbone.js.
Как мне заставить его согласовать сценарии, чтобы они были в порядке?
// 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/'));
});
У меня есть правильный порядок сценариев в моем source/index.html, но, поскольку файлы организованы в алфавитном порядке, gulp будет объединяться underscore.jsпосле backbone.js, и порядок сценариев в моем source/index.htmlне имеет значения, он просматривает файлы в каталоге.
Так у кого-нибудь есть идеи по этому поводу?
Лучшая идея у меня есть переименовывать скрипты поставщика с 1, 2, 3чтобы дать им надлежащий порядок, но я не уверен , если я так.
Когда я узнал больше, я обнаружил, что Browserify - отличное решение, поначалу это может быть больно, но это здорово.
requireинтерфейсе, потому что, конечно, если вы использовали npm на стороне сервера, вы увидите, как вам могут потребоваться модули, но browserify позволяет вам делать это в коде на стороне клиента. чтобы начать, нужно немного поработать, но в основном он находится внутри package.json и если вы хотите использовать его с gulp.js или grunt.js. Если вы установите пакет gulp / grunt browserify, вы сможете запустить его gulp/grunt browserifyи превратить в один основной скрипт, это будет небольшой кривой обучения, но оно того стоит.
browserifyдля Angularмодулей, где простые работы конкатенации и порядок не имеет значения :)