Так я иметь эту функцию:Javascript пользовательских сортировки вопрос
function sortJSFiles(files) {
var src = [];
var vendor = [];
files.forEach(function(item) {
if (item.indexOf('src/') > -1) {
src.push(item);
} else {
vendor.push(item);
}
});
src.sort(function (a, b) {
function replaceCB(r, a, i) { return r.replace(a, i); }
var replace = ['noctis.js', 'noctis.ctrl.js', '.module.js', '.ctrl.js'];
return replace.reduce(replaceCB, a).localeCompare(replace.reduce(replaceCB, b));
});
return vendor.concat(src);}
Что в основном рода JS файлы в моем определенном порядке, но проблема в том, что существуют involded JS в каталогах тоже и те нагрузки, во-первых, которые я не, например:
Running "index:build" (index) task[
'vendor/angular/angular.min.js',
'vendor/angular-material/angular-material.min.js',
'vendor/angular-animate/angular-animate.min.js',
'vendor/angular-aria/angular-aria.min.js',
'vendor/angular-messages/angular-messages.min.js',
'vendor/angular-ui-router/release/angular-ui-router.min.js',
'vendor/moment/min/moment.min.js',
'vendor/angular-moment/angular-moment.min.js',
'templates-common.js',
'templates-app.js',
'src/app/noctis.js',
'src/app/noctis.ctrl.js',
'src/app/account/account.js',
'src/app/account/dashboard/characters/characters.js',
'src/app/account/dashboard/characters/detail/detail.js',
'src/app/account/dashboard/dashboard.js',
'src/app/account/dashboard/dashboard.ctrl.js',
'src/app/account/dashboard/panels/admin.ctrl.js',
'src/app/account/dashboard/panels/users.ctrl.js',
'src/app/account/donate/donate.js',
'src/app/account/donate/donate.ctrl.js',
'src/app/account/settings/settings.js',
'src/app/account/settings/settings.ctrl.js',
'src/app/account/vote/vote.js',
'src/app/account/vote/vote.ctrl.js',
'src/app/membership/dialogs/login.ctrl.js',
'src/app/membership/dialogs/register.ctrl.js',
'src/app/membership/dialogs/termsOfService.ctrl.js',
'src/app/membership/membership.module.js',
'src/app/news/news.js',
'src/app/news/news.ctrl.js',
'src/app/widgets/playersOnline/playersOnline.js',
'src/app/widgets/rankings/rankings.js',
'src/app/widgets/serverDetails/serverDetails.js',
'src/common/directives/feeds/feeds.js',
'src/common/directives/panel/panel.js']
Вы видите в каталоге членства, как правило, он должен быть загружен в первую очередь membership.js и чем JS из подкаталогов. Кто-нибудь может изменить мою функцию, чтобы добиться того, чего я хочу? Благодарю.
"* обычно он должен быть загружен в первую очередь membership.js и чем JS из подкаталогов *" - почему можно было бы ожидать, что? ** d ** ialogs <** m ** загрязнение. Если вы каким-то образом хотите обрабатывать свои предметы специально как пути, вам придется делать это явно и не использовать стандартное сравнение строк. – Bergi
Значит, это должно быть как member.module.js для загрузки сначала перед диалоговыми окнами js – allocen
Также как и все остальные, например, вы находитесь в папке X, и у этого есть основной JS, а также есть в подкаталогах другие js тоже и независимо от порядка алфавита, что js в корневой папке всегда должен загружаться первым. Вы понимаете? – allocen