33 lines
940 B
JavaScript
33 lines
940 B
JavaScript
define(['jquery',
|
|
'underscore',
|
|
'backbone',
|
|
'goatApp/model/MenuModel'],
|
|
function ($, _, Backbone, MenuModel) {
|
|
|
|
return Backbone.Collection.extend({
|
|
model: MenuModel,
|
|
url: 'service/lessonmenu.mvc',
|
|
|
|
initialize: function () {
|
|
var self = this;
|
|
this.fetch();
|
|
setInterval(function () {
|
|
this.fetch()
|
|
}.bind(this), 5000);
|
|
},
|
|
|
|
onDataLoaded: function () {
|
|
this.trigger('menuData:loaded');
|
|
},
|
|
|
|
fetch: function () {
|
|
var self = this;
|
|
Backbone.Collection.prototype.fetch.apply(this, arguments).then(
|
|
function (data) {
|
|
this.models = data;
|
|
self.onDataLoaded();
|
|
}
|
|
);
|
|
}
|
|
});
|
|
}); |