Ошибка пробуя загрузку модуля (AMD) с require.js
-
27-10-2019 - |
Вопрос
На данный момент я немного разочарован потребностями.
Я пытаюсь загрузить jQuery и другие библиотеки в моем файле App.coffee. Проблема в том, что я не могу загрузить зависимости модуля в своем определении. Некоторые из входных аргументов (JQ, JSN и т. Д.) - это NULL или просто объекты HTMldocument. Это изменяется на основе перестановки плагинов, которые я пробую: «Заказ», «Domready» или «нет».
Мой справочник JS LIB выглядит как А). И мой файл app.coffee выглядит как b). Я пытался использовать «Пути» в require.config и просто необработанном файле (что вы видите ниже). Я знаю о интеграции requirejs-jquery. Но разве я не смогу Заказать загрузку моего плагина?
Я получаю другой набор ошибок, если я попробую с именем «Пути». Я вижу кого -то Предлагается jQuery 1.7 (также здесь) Это работает? Сначала я хотел сделать шаг назад и убедиться, что у меня есть концепции правильно. i) require.config ii) Определение модуля с зависимостями, iii) плагин заказа и т. Д.
Если у меня есть эти концепции правильно, я думаю, что это проблема версии jQuery. Тем не менее, это не только jQuery как зависимость. И невероятно утомительно терять время таким образом. Любая помощь ценится. Заранее спасибо.
А)
$ tree js/lib/ js/lib/ ├── backbone.js ├── backbone_loader.js ├── domReady.js ├── jquery-1.6.3.js ├── json2.js ├── order.js ├── pure.js ├── require.js └── underscore.js
Б)
require.config({ baseUrl: "/js", paths: order : '/js/lib/order' jQuery : '/js/lib/jquery-1.6.3' json2 : '/js/lib/json2' Underscore : '/js/lib/underscore' Backbone : '/js/lib/backbone_loader' pure : '/js/lib/pure' }) define( [ 'js/lib/order!js/lib/jquery-1.6.3', 'js/lib/order!js/lib/json2', 'js/lib/order!js/lib/underscore', 'js/lib/order!js/lib/backbone', 'js/lib/order!js/lib/pure', 'js/lib/order!js/bkeeping/models', ] (jq, jsn, und, bbn, pur, models) -> console.log('bkeeping LOADED') # return an object with the models in it models : models jQuery : jq.noConflict() json2 : jsn Underscore : und.noConflict() Backbone : bbn.noConflict() pure : pure )
Решение 2
Спасибо за направление по этому поводу.
Но я пошел в jQuery-1.7, но все еще должен был вытащить из глобального пространства, чтобы получить объект. Это относится к моим другим либерациям на данный момент и их зависимости. То, что я закончил сделать, это возвращение объекта с зависимостью в нем. Я получил загрузку библиотеки с заказать плагин.
Контракт объектов зависимости, передаваемых вашей функции обратного вызова (JQ, PUR, JSN и т. Д.), Просто не работает для этих библиотек. Это работает для моих определенных модулей (пример: модели), но не на внешние либеральные либера. Я попробовал Используйте плагин, но обнаружил, что это не сработало для подчеркивания и магистрали, или я не настроил его должным образом. На данный момент это мое работоспособное решение; Хотя я должен сказать, что головные боли серьезно омрачают преимущества для требований.
define( [ 'order!js/lib/jquery-1.7', 'order!js/lib/pure', 'order!js/lib/json2', 'order!js/lib/underscore', 'order!js/lib/backbone', 'order!bkeeping/models', ] (jq, pur, jsn, und, bbn, models) -> console.log('bkeeping LOADED') # return an object with the dependencies in it models : models jQuery : jQuery.noConflict() pure : pur # pure and json2 objects are simply used in other libs. I don't need them directly json2 : jsn Underscore : _.noConflict() Backbone : Backbone.noConflict() )
Другие советы