Скажем, например, вы строите проект на 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
модулей, где простые работы конкатенации и порядок не имеет значения :)