DateJS - this.fecha.getMonthName не является функцией

Мэтс, я пытаюсь получить название месяца из объекта DateJS. Если я console.log объекта, я получаю все его функции. Но если я попытаюсь использовать, например, getMonthName / getDayName / isBefore / isAfter / etc, вы получите сообщение об ошибке, в котором говорится, что функция не существует.

Любая идея?

Спасибо!

ОБНОВИТЬ:

Это мой код:

App.Views.DaysTable = Backbone.View.extend({
el: '#dtable',
template: _.template( App.Templates.DaysTable ),
templateTH: _.template( App.Templates.DaysTableTH ),

initialize: function(){
    // Defino la fecha corriente
    this.fecha = Date.today();
    // Defino los eventos de la navegacion
    var that = this;
    $('#prevWeekBtn').on('click', function(){
        that.lessWeek();
    });

    $('#nextWeekBtn').on('click', function(){
        that.plusWeek();
    });

    $('#todayBtn').on('click', function(){
        that.hoy();
    });
},

hoy: function(){
    this.fecha = Date.today();
    this.render();
},

plusWeek: function(){
    this.fecha.add(7).days();
    this.render();
},

lessWeek: function(){
    this.fecha.add(-7).days();
    this.render();
},
//between date
render: function(){

    var date = this.fecha;

    this.$el.html( this.template({ month: this.fecha.getMonthName() }) );
    var a = 1;
    while(a < 8){       
        this.$('tr#days').append( this.templateTH({dayName: date.getDayName(), dayDate: date.toString('dd')}) )
        date.addDays(1);
        a++;
    }

    this.collection.each( function(bed){
        this.fecha.add(-7).days();
        bed.set('fecha', this.fecha);
        var row = new App.Views.BookingsRow({ model: bed })
        this.$('tbody#days').append( row.render().el );
    }, this);

    this.fecha.add(-7).days();
    return this;
    // Muestro los dias en cada habitacion
}
});

Это сообщение об ошибке: TypeError: this.fecha.getMonthName не является функцией

1 ответ

Я решил эту проблему. Я должен был изменить свой код. Оказывается, в последней версии DateJS больше нет getMonthName/getDayName. Теперь, чтобы напечатать название месяца, вы используете:

Date.today().toString('MMMM');

Или день:

Date.today().toString('dddd');

Теперь я получаю другую проблему, но я открою другую ветку.

Спасибо!

Другие вопросы по тегам