Backbone View.remove()

时间:2012-04-30 15:28:32

标签: backbone.js

我刚刚将Backbone升级到0.9.2,当我执行view.remove()时,就像我使用旧版本一样,它不再适用于我。

我有一个名为processingView的popup.js视图,它只是在视图扩展中包含了一些jquery代码。我将其分配给一个名为processing的变量。 this.processing = new processingView(); 当我触发事件以从Dom中删除处理对象时说。 this.processing.remove()它不再被删除。如果我恢复到Backbone的旧版本,它可以工作。

任何人都有任何想法为什么会这样。 我的代码是大量的源文件,所以很难在这里粘贴所有这些。但就我正在尝试做的事情而言,应该直接从dom中删除一个视图对象。

解答我自己的问题

我在手动设置View.el

时没有使用setElement

如果您曾在Backbone View中手动设置this.el作为特定的DOM元素,那么您将需要使用setElement。

仍然不清楚view.el和view之间的区别。$ el。也许有人可以为我理顺。

1 个答案:

答案 0 :(得分:1)

view.$el相当于$( view.el )。这是一个方便,因此您不必承担重复调用jQuery构造函数的麻烦和额外开销。您可能希望构建代码(如果可能),这样您就不需要手动设置el并调用setElement。您可以在另一个问题中看到my answer作为示例。