У меня есть приложение Host Javascript, которое не использует AMD, BackboneJS или RequireJS, но использует jQuery, и у меня есть небольшое приложение с requireJS + BackboneJS, которое должно быть плагином хоста.
Теперь плагин AMD-приложения:
- должно стать некоторыми данными из приложения Host
- должен быть запущен из приложения Host (в диалоге jquery)
Моя проблема в том, что у меня нет глобальных переменных (функций) в плагине AMD-приложения, поэтому мое большое приложение не-AMD не может увидеть это таким образом.
Как установить связь между ними, чтобы приложение, не принадлежащее AMD, могло видеть и передавать данные в подключаемый модуль AMD?
Точка входа в мой плагин Приложение AMD:
<script data-main="app/js/main" src="app/js/Libs/require/require.js"></script>
main.js
require.config({
paths: {
jquery: 'http://code.jquery.com/jquery-1.7.1.min',
jqueryui: 'http://code.jquery.com/ui/1.8.17/jquery-ui',
underscore: 'Libs/underscore/underscore-min',
backbone: 'Libs/backbone/backbone-min',
//Require Plugins
text: 'Libs/require/text',
use: 'Libs/require/use',
domReady: 'Libs/require/domReady'
},
use: {
backbone: {
deps: ["use!underscore", "jquery"],
attach: function() {
return Backbone;
}
},
underscore: {
attach: "_"
}
}
});
require([
'jquery',
'use!backbone',
'app'
], function(App){
});
app.js
define([
'jquery',
'router'
], function($, Router){
var initialize = function(){
// Pass in our Router module and call it's initialize function
Router.initialize();
}
return {
initialize: initialize
};
});