Comments 16
еще есть github.com/ded/script.js, асинхронная загрузка, очередь и всякое такое
0
Очень вовремя. Завтра же применю его в рабочем проекте: )
И предусмотрено всё, что бывает нужно в практических случаях.
И предусмотрено всё, что бывает нужно в практических случаях.
0
безмодульный синхронный загрузчиквы серьезно? И если да, то зачем?
+3
Я серьезно.
Yepnope — асинхронный, это означает, что код в каждом файле мне пришлось бы обертывать в callback функции.
0
Но ведь синхронная загрузка означает совершенно ненужные задержки и подвисание браузера на время этой операции.
0
Вы видимо пост невнимательно прочли.
0
Возможно. Я просто так и не понял, почему проще написать свой велосипед, чем взять проверенное решение и обернуть пару десятков файлов в модули.
0
Мой загрузчик никак не тормозит рендеринг браузера: после того как браузер загрузил и выполнил код загрузчика он идет дальше обрабатывать документ, загрузка остальных скриптов идет асинхронно(не тормозя рендеринг). Если тегу script добавить атрибут async то и загрузка и выполнение кода загрузчика не будет томрозить рендеринг.
Синхронность про которую я говорю — это синхронность в работе скрипта: пока функция require не загрузит скрипты(если скрипт загружен кешем то повторно скрипт не загружается), дальше выполнение кода не пойдет.
Синхронность про которую я говорю — это синхронность в работе скрипта: пока функция require не загрузит скрипты(если скрипт загружен кешем то повторно скрипт не загружается), дальше выполнение кода не пойдет.
0
Вы бы хоть дали ссылку на демо.
Интересно же посмотреть, как браузер встанет раком при синхронной загрузке кучки скриптов, например jQuery и пары десятков плагинов к нему.
Вы достаточно элегантно решили проблему очередности загрузки скриптов — загружаете скрипты в цикле синхронно.
Интересно же посмотреть, как браузер встанет раком при синхронной загрузке кучки скриптов, например jQuery и пары десятков плагинов к нему.
Вы достаточно элегантно решили проблему очередности загрузки скриптов — загружаете скрипты в цикле синхронно.
0
Для себя сделал свой велосипед: gist.github.com/Rulexec/5719946
Правда это совсем не загрузчик, всё равно просто пихаю кучу script-тегов в head. Ну и лишние две строки в каждом файле в начале и конце. Впрочем, если взглянуть на node.js, оно там реализовано так же (например, если попытаться запустить что-нибудь инвалидное на первой строке можно получить:
В теории в среде node.js, а не браузера смогу определить глобальный Module и подпихивать туда настоящие module, exports, require и получить код, который и там и там работает. Да, я знаю, что уже есть такие решения, но не вижу проблем в своём. Потом можно будет просто склеить все подключенные скрипты в один и всё так же будет работать.
Правда это совсем не загрузчик, всё равно просто пихаю кучу script-тегов в head. Ну и лишние две строки в каждом файле в начале и конце. Впрочем, если взглянуть на node.js, оно там реализовано так же (например, если попытаться запустить что-нибудь инвалидное на первой строке можно получить:
<code>ruliov@ruliov-laptop:/tmp$ echo glitch > test.js ruliov@ruliov-laptop:/tmp$ node test.js /tmp/test.js:1 (function (exports, require, module, __filename, __dirname) { glitch</code>
В теории в среде node.js, а не браузера смогу определить глобальный Module и подпихивать туда настоящие module, exports, require и получить код, который и там и там работает. Да, я знаю, что уже есть такие решения, но не вижу проблем в своём. Потом можно будет просто склеить все подключенные скрипты в один и всё так же будет работать.
0
Sign up to leave a comment.
Еще один загрузчик скриптов для JavaScript