0

모음에 대해 정의 된보기가 있습니다. 렌더시이 뷰는 전달 된 모델에 대해 필요한 작업을 수행하여 웹 페이지에 추가하는 함수를 호출합니다. 여기에 짧은 버전이 있습니다 :백본보기 내부의 함수 사용

addNightFeed: function(nightFeed) { 
    var nightFeedView = new app.nightFeedView ({ model: nightFeed }); 
    this.$el.append(nightFeedView.render().el); 
} 

내 웹 페이지에는 '추가'버튼이 있습니다. 클릭하면 특정 속성을 포함하는 적절한 유형의 새 모델이 만들어집니다.

'추가'를 클릭 할 때 생성되는 새 모델에서 addNightFeed를 호출하는 방법이 있는지 궁금합니다.

답변

2

간단히 viewInstance.addNightFeed(newModalInstance)을 호출 할 수 있습니다. 당신은 내가 생각할 수없는 어떤 이유로 그렇게 할 수없는 경우

당신이 Collection 뷰를 가지고 있기 때문에, 당신은 당신의 컬렉션 add 이벤트를 listenToaddNightFeed를 호출 할 수 있습니다. 예를 들어 : 귀하의 추가 버튼을 클릭하면

// Collection view 
initialize: function(){ 
    this.listenTo(this.collection, 'add', this.addNightFeed); 
} 

, 당신은 그것으로 이미 생성 된 모달 인스턴스를 추가 할 컬렉션을 add 방법을 사용할 수 있습니다, 또는 create 방법을 작성하고 필요에 따라 추가 할 수 있습니다. 그러면 add 이벤트가 트리거되고 addNightFeed이 호출됩니다.