2015-10-15 2 views
0

Допустим, у меня есть метод, который возвращает из сервера 2 наборов данных:Backbone коллекция другой результат стратегии

На успех:

{"status":true,"data":[{"id":1, "name": "yolo"}, {"id":2, "name": "yolo2"}]} 

На провал:

{"status":false,"data":["Some error"]} 

Я использую следующие коллекции:

var Entities.Collection = Backbone.Collection.extend({ 
    url: "/entity", 
    model: Entities.Model, 
    parse: function(json) { 

     // return different data ? 
     // trigger something ? 
     return json.data; 
    } 
}); 

Проблема заключается в том, что когда я получил результат неудачи после извлечения, он установит коллекцию с данными об ошибках.

Какова наилучшая практика для решения такой проблемы?

ответ

1

Я бы сказал, что заполнить коллекцию только если у вас есть сценарий успеха, который будет выглядеть примерно так:

var Entities.Collection = Backbone.Collection.extend({ 
    url: "/entity", 
    model: Entities.Model, 
    parse: function(response) { 
    if(response.status) 
     return response.data; 
    else {} // handle this if you want to do something like triggering an event or 
      // setting a flag, else leave it 
    } 
}); 
Смежные вопросы