을 정의되지 않은 내 생각이다, 리턴 : 당신은 내가 빈 객체를 포함하도록 _EventViews
속성을 설정 볼 수 있듯이백본보기 속성은 다음
define(
[
"jquery"
, "underscore"
, "backbone"
, "eventView"
]
, function($, _, Backbone, EventView) {
"use strict";
var TimelineView = Backbone.View.extend({
tagName: 'div'
, className: 'column'
, _EventViews: {} // Cache event views for reuse
, initialize: function() {
this.collection.bind('add', this.add);
this.collection.bind('reset', this.add);
}
, render: function() {
return this;
}
// Listen for additions to collection and draw views
, add: function(model) {
var eventView = new EventView({
model: model
});
// Cache the event
console.log(this._EventViews);
this._EventViews[model.get('id')] = eventView;
// Draw event
eventView.render();
}
});
return TimelineView
}
);
. 그러나 add()
함수를 호출하면 console.log(this._EventViews)
은 정의되지 않은 값을 반환하고 다음 문은 실패합니다.
아무도 왜 이것이 내게 말할 수 있습니까?
문제에 대한 설명이 부족하지만 두 지점 모두에 적합합니다. – Loamhoof
Backbone과 모든 튜토리얼의 사고 방식을 다른 구조로 사용하는 것처럼 보이지만 'listenTo'로 가서 정적 인 '_EventViews'에 대해 감사하게 생각합니다. –