58 lines
1.6 KiB
JavaScript
58 lines
1.6 KiB
JavaScript
define(['jquery',
|
|
'underscore',
|
|
'backbone',
|
|
'goatApp/controller/LessonController',
|
|
'goatApp/controller/MenuController',
|
|
'goatApp/view/LessonContentView',
|
|
'goatApp/view/MenuView',
|
|
'goatApp/view/TitleView'
|
|
], function ($,_,Backbone,LessonController,MenuController,LessonContentView,MenuView,TitleView) {
|
|
|
|
var lessonView = new LessonContentView();
|
|
var menuView = new MenuView();
|
|
var titleView = new TitleView();
|
|
|
|
var GoatAppRouter = Backbone.Router.extend({
|
|
routes: {
|
|
//#....
|
|
'welcome':'welcomeRoute',
|
|
'attack/:scr/:menu':'attackRoute' //
|
|
},
|
|
|
|
lessonController: new LessonController({
|
|
lessonView:lessonView
|
|
}),
|
|
|
|
menuController: new MenuController({
|
|
menuView:menuView,
|
|
titleView:titleView
|
|
}),
|
|
|
|
init:function() {
|
|
goatRouter = new GoatAppRouter();
|
|
this.lessonController.start();
|
|
this.menuController.initMenu();
|
|
|
|
goatRouter.on('route:attackRoute', function(scr,menu) {
|
|
this.lessonController.loadLesson(scr,menu);
|
|
this.menuController.updateMenu(scr,menu);
|
|
//update menu
|
|
});
|
|
goatRouter.on('route:welcomeRoute', function() {
|
|
alert('welcome route');
|
|
});
|
|
|
|
Backbone.history.start();
|
|
this.listenTo(this.menuController, 'menu:reload',this.reloadMenu)
|
|
},
|
|
|
|
reloadMenu: function (curLesson) {
|
|
this.menuController.updateMenu(curLesson);
|
|
}
|
|
|
|
|
|
});
|
|
|
|
return GoatAppRouter;
|
|
|
|
}); |