О чем вы вообще? Какие еще клиентские скрипты? Nodejs предназначен для выполнения js в пределах ос без участия проводников интернета. Если проще то делает из js исполняемую программу.
Сергей Протько: максимум что можно сделать это написать расширение доя хрома и фф и то в этом случае при установке расширения пользователь будет предупрежден о том что данное расширение будет иметь доступ до всех интернет ресурсов. Такое поведение мало кому понравится, особенно тем кто эти расширения одабривают.
Константин Китманов: у каждой библиотеки свой механизм, но в общем виде это выглядит как
Promise.all(arrayOfPromises).then(function(arrayOfResults) {
//...
});
Результат вполне ожидаемый. Вам же нужна разница из двух массивов, вот и делайте из двух
[1,2,3].diff([3,4,5]).concat([3,4,5].diff([1,2,3])
А на счет ie8 то вам никто не мешает реализовать эти два метода самому
С чем там вам пришлось шаманить? Скачал архив, распаковал куда хочеш, создал конфиг, зарегал виндовый сервис, запустил его и все. Такое ощущение что вы с ос на уровне пользователя общаетесь.
ГЛЕБ ГЛЕБОВ: раздел с товаром самодостаточен, поэтому его можно выделить в отдельный модуль, а вот с сервисом нужно подумать. Сервисы взаимодействующие с api я бы организовал в модуле api, а сервис бизнес логики можно включить в модуль раздела (часто два этих сервиса обьединяют -используя вместо первого стандартный ангуляровский сервис $resource и поэтому все это можно отнести к модулю раздела)
Приведенный вами метод возвращает ответ от сервера и делает он это не моментально. Что у вас в ответе от сервера? После ответа от сервер смотрите что пришло (обычно это список событий), выбираете время последнего события из этого списка и на его основе генерируете новую строку подключения к серверу, делаете запрос к серверу, получаете ответ, разбираете ответ, получаете последнее событие из ответа и на его основе генерируете новую строку подключения..... И так до бесконечности
Мы так примерно и делали вынеся все общие layout и views в отдельный проект который компилировала в отдельную сборку где каждый файл был добавлен как ресурс. После этого такую сборку можно было цеплять к любому проекту и использовать через VirtualPathProvider.