Показать сообщение отдельно
  #1 (permalink)  
Старый 17.09.2014, 12:16
Новичок на форуме
Отправить личное сообщение для Буратино Посмотреть профиль Найти все сообщения от Буратино
 
Регистрация: 24.10.2013
Сообщений: 6

не загружается коллекция из localstorage
Здравствуйте!

Вот примерный код

Коллекция и модель

var C = Backbone.Collection.extend({
        model: M,
        localStorage: new Backbone.LocalStorage('st')
    });

var M = Backbone.Model.extend({
    localStorage: new Backbone.LocalStorage('st'),
    defaults: {
        title: 'untitled'
    },
    validate: function() {
        //...
    }
});


Есть форма для заполнения модели данными, когда все поля заполнены
модель сохраняется

model.save(null, {success: function() {
                    this.navigate('list', {trigger: true});
                }.bind(this)});


Представление всей коллекции - сюда ведет роут list/
list: function() {
            var c = new C();
            c.fetch({
                success: function() {
                    var view = new translationsListView({
                        collection: c
                    });
                    this.content.html(view.render().el);
                }.bind(this)
            });

        }


Проблема такова - модель успешно сохраняется - срабатывает событие success и она появляется в localstorage(я смотрю в консоли). c.fetch - тоже срабатывает, только вот новой модели там не появляется.

Самое интересное, что после перезагрузки страницы все работает правильно - c.fetch так же считывает данные из localstorage, но на этот раз модель там уже есть!

Вопрос - почему fetch не забирает модель из хранилища, если не перезагрузить страницу?

Последний раз редактировалось Буратино, 17.09.2014 в 12:19.
Ответить с цитированием