Как определить модуль и использовать его в додзе с AMD?
Я поддерживаю и расширяю старый проект, который был до AMD. Я хочу добавить диаграмму в приложение. для этого я создал файл js следующим образом:
define(["dojox/charting/Chart",...."dijit/Dialog","dojo/dom-construct"],
function (Chart) {
function showDailyChart(data){
//code to show the chart in a dialog
}
return customModules.singleChart;
});
Я сохранил этот файл как/customModules/singleChart.js
На моей главной странице HTML я добавил ее в пакеты следующим образом:
var dojoConfig = { parseOnLoad: true,
packages: [....,{"name":"customModules",
"location":location.pathname.replace(/\/[^/]+$/, "")+"/modules" }
]};
Функция, из которой я хочу назвать это, предварительно AMD. Поэтому я называю это следующим образом:
dojo.require("customModules.singleChart");
.
.
.
customModules.singleChart.showDailyChart(data);
я могу увидеть это/customModules/singleChart.js
загружается в консоль Firebug, а также в Net Tab. Однако нетcustomModules.singleChart
объект. Как ни странно, ошибки тоже нет. Я проверил это в Firebug, а также в Google Chrome 'инструменты разработчика.
Как правильно вызывать модуль AMD, используяdojo.require
? Или есть лучший способ сделать то, что мне нужно?