gpt4 book ai didi

javascript - 在 Backbone.js 中插入 DOM subview 时出现问题

转载 作者:行者123 更新时间:2023-11-30 18:30:26 25 4
gpt4 key购买 nike

尝试将从 forEach 创建的我的 subview (OfferMarketView) 返回到 DOM 中。做这个的最好方式是什么?我无法使以下工作正常进行。

// DEFINE VIEW
var OfferView = Backbone.View.extend({
initialize: function () {
this.model = new Offers();
this.model.fetch();
this.model.on('change', this.modelChange);
this.model.on('change', this.render);
this.modelChange = function () {
alert('model changed');
};
this.render();
},
render: function () {
var container = this.el;
this.model.forEach(function (s) {
var view = new OfferMarketView({
id: "container" + s.get('name').toLowerCase().replace(/\s*/g, '')
});
$("#offerCol").append(view.el);
});
return this;
}
});
var OfferMarketView = Backbone.View.extend({
tagName: "div",
className: "classname",
events: {},
render: function() {
}
});


// INITIALISE VIEW
offerView = new OfferView();

最佳答案

您必须在附加元素之前渲染您的 View :

$("#offerCol").append(view.render().el);

请注意,您必须在渲染方法中添加 return this; 以使其可链接:

var OfferMarketView = Backbone.View.extend({
tagName: "div",
className: "classname",
events: {},
render: function() {
return this;
}
});

关于javascript - 在 Backbone.js 中插入 DOM subview 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9799623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com