Мое приложение работает локально с Requirejs в течение некоторого времени без проблем сейчас, но когда я помещаю его на удаленный сервер, я снова запускаю проблемы, связанные с Requirejs.Requirejs + jQuery не удается, но только при обслуживании удаленно
У меня есть сценарий оболочки jQuery, в котором я загружаю фактический jquery и некоторые jQuery-плагины, например. jquery.cookie.
## boot.js
// Loaded via <script data-main="/boot.js" src="/vendor/requirejs/require.js"></script>
require({
baseUrl: '/vendor/requirejs/',
waitSeconds: 5,
paths: {
jquery: '/vendor/jquery/dist/jquery',
jQuery: '/assets/javascripts/jquery-wrapper',
}
}, [
'jQuery'
], function($) {
...
});
});
## /assets/javascripts/jquery-wrapper.js
define([
'order!jquery',
'order!/vendor/jquery-cookie/jquery.cookie.js'
], function($) {
// In here I also define some on my own functions on $
return $;
});
Проблема заключается в том, когда я получить доступ к приложению на удаленном сервере, `Jquery» не определено в точке сценарий jquery.cookie оценивается, подразумевающее мне, что он работает, прежде чем была загружена Jquery.
Uncaught ReferenceError: jQuery is not defined jquery.cookie.js:47
(anonymous function) jquery.cookie.js:47
Я, хотя заказ! префикс должен помешать такой ситуации?
Снова это прекрасно работает на месте. Проблема в том, что я удаляю удаленный сервер.
Если это актуально, локально я использую тонкий сервер. Удаленно я также использую Thin, но позади Nginx, хотя Nginx просто проксирует абсолютно все до Thin.
Нет указаний на то, что файлы не найдены в течение 5-секундного таймаута. Ошибка появляется на консоли немедленно.
Может ли кто-нибудь сказать мне, где я ошибся?
Благодаря
'заказать! /vendor/jquery-cookie/jquery.cookie.js' неверно. Выньте «.js». Кроме того, большинство пользователей помещают массив basePath и paths в вызов метода «configure». Здесь может быть гораздо больше ошибок, но я думаю, что эти два выделяются как проблемы. –