2013-05-21 2 views
0
var items=[{"endsAt": "2013-05-26T07:00:00Z","id": 1,"name": "Niuniu1"}, 
{"endsAt": "2013-05-26T07:00:00Z","id": 2,"name": "Niuniu2"}] 

ItemModel=Backbone.Model.extend({}); 
ItemCollection=Backbone.Collection.extend({ 
    model:ItemModel, 
    url: '...', 

    parse: function(response) { 
     return response.items; 
    } 

}) 

를 가져 오는 모델의 특정 필드를 수정, 각 모델의 경우, endAt는 "2013-05-26T07 될 것입니다 : 00Z "입니다. 실제로 "2013-05-26"이되도록 모델 또는 데이터 프로세스를 수정할 수 있습니까?backbone.js 내가 항목과 같은 일련의 데이터가있는 경우 후 수집

foreach 루프를 사용하여 날짜를 처리 할 수 ​​있지만 모델 내부에서 구문 분석을 수행하는 것과 같은 더 나은 pracitce가 있는지 궁금해하고 있습니까?

감사합니다.

답변

1

제가 사용하는 연습은 당신이 생각했던 것입니다 - 모델에 맞춤 구문 분석을 구현하십시오. 설명서에 설명되어 있듯이 동기화가 끝나면 호출됩니다. 여기 참조 : 내가 아는 한 http://backbonejs.org/#Model-parse

ItemModel = Backbone.Model.extend({ 
    parse: function(response,options) { 
     //perform your work on 'response', 
     // return the attributes this model should have. 
    }; 
}) 
0

을, 당신은

  • 이 모델 내부의 initialize 메소드를 구현 여기

    • 이 옵션 모델 내부의 사용자 정의 parse 메소드를 구현을

    두 가지 모두 문제가 없으며 여러 프로젝트에서 2 가지 방법을 사용했으며 잘 작동합니다.

  • +0

    fetch의 경우 initialize 메서드 도움말을 구현하면 모델의 상태는 재설정되지만 다시 초기화되지는 않습니까? – damienc88

    +0

    나는 그가 '초기화'를 사용하는 새로운 모델을 추가 할 때도 마찬가지라고 생각한다. –

    관련 문제