1

我正在玩 Backbone,并且在我的列表视图中让一个模型额外渲染了 4 次。

我在调用 history.start 之前创建并获取集合,但我认为这与它无关。

我正在调用一个仅在 json 中返回 2 个模型的 api。渲染的第一个模型只显示一次,下一个连续显示 5 次。每次都会发生这种情况。

这是我的代码。

https://gist.github.com/3843944

4

1 回答 1

1

在第 66 行,你有这一行:

@$("div").append(view.render().el)

每次呈现服务提供者时都会调用它。由于通用选择器, div,我认为它选择div了元素中存在的每一个。当您添加第一个条目时,唯一div存在的是<div class='providers'>. 但是,当它呈现第二个条目时,它会选择该条目以及由第一个服务提供商创建并附加到模板的div所有 new 。div

尝试这样的事情:

@$el.append(view.render().el)
于 2012-10-06T13:41:54.467 回答