Require.JS: загрузка модулей, которые зависят друг от друга? - PullRequest
2 голосов
/ 30 марта 2012

Я только начинаю с Require.JS и у меня есть (надеюсь) простой вопрос.

Я использую jQuery и SlickGrid, и я загрузил все свои модули в начало моего файла main.js следующим образом:

require(["jquery", "underscore-1.3.1", "backbone-0.9.1", 
     "plugins/jquery.event.drag-2.0.min", "plugins/slick.core", 
     "plugins/slick.grid", "plugins/slick.dataview"], function($) { ...

Это нормально работает в Chrome и Firefox,но в Safari я получаю несколько предупреждений об ошибках:

SlickGrid requires jquery.event.drag module to be loaded
require-jquery.js:1632Error: Module name 'underscore' has not been loaded yet 
   for context: _http://requirejs.org/docs/errors.html#notloaded

SlickGrid зависит от jquery.event.drag, а Backbone зависит от Underscore, и похоже, что Safari не любит, когда они не могут видеть друг друга.

Я что-то не так делаю?Есть ли способ, которым я могу обойти это?

Ответы [ 2 ]

13 голосов
/ 18 декабря 2012

requirejs order plugin - это deprecated.См. requirejs documentation и используйте shim загрузку вместо order plugin.

0 голосов
/ 31 марта 2012

Вы должны попробовать Requirejs Order Plugin , чтобы убедиться, что файлы загружены в правильном порядке.

ОБНОВЛЕНИЕ: Пожалуйста, смотрите сообщение ниже! Плагин заказа устарел! ИСПОЛЬЗУЙТЕ ШИМЫ

PLZ См. Конга Раджу и Саймон Смит Пост!

...