Пора мне на свалку, вот что. Надо было сразу задать вопрос, что это за диковинная конструкция, но я почему-то решил, что вы знаете, что делаете.
// caledar.js
define(function () {
return {
description: 'calendar',
};
});
// timer.js
define(function () {
return {
description: 'timer',
};
});
Совет: никогда не пишите
var self = this;
, смысл в этом был только во времена ES3. Ну или хотя бы пишите
'use strict';
. Не используйте Dojo, не используйте requirejs -- сейчас просто не найдете помощи по этим инструментам. Если это не легаси-проект, который можно переписать за пару дней, нет смысла начинать. Возьмите vue.js и webpack (возьмите готовый бойлерплейт).
Удачного созерцания.