2010-12-13 5 views
2

Я довольно долго бил головой об этом. Я загружаю около 60 файлов сценариев, которые должны уважать определенную структуру зависимостей. Загрузка их обычно в requirejs не работает, поэтому я начал использовать плагин заказа.RequireJS 'традиционный' скрипт, загружающий aka Плагин заказа

Плагин заказов отлично работает в Firefox 3.6.12, IE7, IE8, но мое приложение взорвалось в Chrome 8. Chrome, похоже, выполняется в любом порядке, в котором это похоже. Это известная проблема или есть некоторые обходные пути?

ответ

7

Отказ от ответственности, я главный разработчик RequireJS:

Там было изменение в ночных WebKits, что ломает плагин заказа. Это также влияет на LABjs. Это привело к реализации спецификации HTML5, которая изменила поведение загрузки динамического сценария. Хорошо, что браузеры начинают сходиться, плохо то, что спецификация не учитывала упорядоченное выполнение динамически добавленных элементов сценария.

Автор LABjs, Kyle Simpson, был engaging the HTML5 group, чтобы получить официальное изменение спецификации, которое поддерживает выполнение динамически добавленных скриптов. Пока что ночные мечты Firefox внесли изменения, и я считаю, что WebKit тоже может это рассмотреть. Another good writeup is by Henri Sivonen.

Все, что сказал, я подумал, что это повлияло на ночные часы WebKit, и я не уверен, что Chrome 8 взял изменения. Я ожидаю, что это вероятная причина поломки, но мой модульный тест для плагина заказа, похоже, работает для меня в Chrome 8.

Если вы можете подтвердить, что находитесь на Chrome 8 и, возможно, не канал разработчика, может быть, Chrome 9, что было бы хорошо знать. Также было бы хорошо знать, какую версию RequireJS вы используете. 0.15 имеет исправление, которое соответствует изменению в ночное время Firefox. Если вы используете более старую версию RequireJS, вы можете попробовать более новую версию.

+0

Спасибо за ответ, я слышал, что ночные часы WebKit были сломаны на jQuery Summit 2010. Я определенно использую Chrome 8, я также видел небольшой тест в Интернете, который отлично работал в моем Chrome. У вас есть рекомендации здесь? Моя основная цель для этого - ускорить разработку и в конечном итоге использовать оптимизатор сборки. Инструмент построения немного неприятен, поскольку он, кажется, игнорирует любые скрипты, включенные в заказ! префикс. – Drew

+0

Как проверка работоспособности, я просто сбрасывал скрипты по порядку, когда я отправлял тогда, чтобы требовать JS как обычные теги скрипта в моем html. Это отлично работало в Chrome8 и FF3. Есть ли некоторые варианты отладки, которые у меня есть, чтобы посмотреть, что здесь не загружается? – Drew

+1

Оптимизатор был улучшен, чтобы хорошо работать с порядком! теперь в только что выпущенном 0.2.0, так что, надеюсь, это поможет построить ситуацию. Вы также можете попробовать версию 0.2.0, были исправлены ошибки и изменения вокруг плагина заказа. Если это не сработает, свяжитесь со мной, если у вас есть воспроизводимый тестовый пример, и я могу взглянуть на него. – jrburke

 Смежные вопросы

  • Нет связанных вопросов^_^