Заставить jQuery 1.7 и Require.js (и, может быть, Django) играть хорошо, рационально? - PullRequest
2 голосов
/ 21 февраля 2012

У меня были действительно странные ошибки пути с jQuery и require.js (в сочетании с Django - и сервер dev, и apache).

Симптомы заключались в том, что, например, я определял модули, которые зависели от jQuery (выход из старого урока ) и от загрузки jQuery несколько раз, в последний раз получалось 404 Например:

GET localhost:8000/static/js/lib/jquery.js
GET localhost:8000/static/js/lib/backbone.js
GET localhost:8000/js/lib/jQuery-1.7.1.js

Где Django STATIC_URL='/static/' и подобные вещи происходили, когда, если бы я попытался использовать Apache и collectstatic, jQuery загрузился бы один (или два) раза, а затем был бы перезагружен, игнорируя статические настройки.

После просмотра этого другого вопроса о том, как именованный define отстой, я попытался просто удалить имя из вызова jQuery, чтобы определить , поэтому в моей копии это выглядит так :

if ( typeof define === "function" && define.amd && define.amd.jQuery ) {
define([], function () { return jQuery; } );
}

Кажется, это работает, но кажется грязным.

Учитывая все вышесказанное, я мог бы просто использовать пакет jQuery / require.js, но я не чувствую себя в безопасности, предполагая, что он будет хорошо обрабатывать обновления или обязательно будет работать с моей личной конфигурацией, поэтому я хотел бы знать, если есть "правильный способ" справиться с этим беспорядком.

...