所以我继承了一些backbone.js代码,今天需要对其进行更改。编写原始代码的人正在休假。我只是勉强研究backbone.js,几乎是一个骨干新手。
下面的代码可以正常工作并完成它的设计目的。只有一个问题:模板文件的内容(见下文)被渲染到特定的 HTML 页面中。
我的问题是,我不完全理解代码流程,无法做出有根据的猜测,即如何以及在何处插入对该 HTML 页面上实际容器的引用,并让内容显示在该容器内。
我需要此函数的输出的容器的类名是.mngmnt-main-sctn
. 这可能吗?
.
window.ManagementInstancesBackupView = ManagementView.extend({
events: _.extend({
}, ManagementView.prototype.events
),
initialize: function() {
this.model = this.options.model
this.collection = this.options.collection
this.template = _.template($('#instances-management-backup-template').html())
},
render: function() {
var instances = this.collection
// Append container and title
var $el = this.$el.html(this.template({}))
instances.each(function(instance) {
// THIS IS THE CONTAINER THAT SHOULD GET STUFF APPENDED TO:
// $(".mngmnt-main-sctn")
$el.append(this.renderParent(instance));
instance.get('nic').each(function(nic) {
$el.append(this.renderChild(nic));
}, this)
}, this)
return this
},
renderParent: function(instance) {
return new ManagementInstancesBackupParentView({model: instance}).render().$el
},
renderChild: function(nic) {
return new ManagementInstancesBackupChildView({model: nic}).render().$el
}
});