【发布时间】:2015-03-13 22:50:49
【问题描述】:
我正在 Jasmine 中测试主干视图。当我调用视图的 remove 方法时,该元素实际上并没有被删除。
我认为有这个事件处理程序:
onModelChange: function() {
this.$el.html('');
this.render();
}
我必须这样写,因为手动设置 html 是删除它的唯一方法。调用 remove 不会做任何事情,当视图再次呈现自身时,它只会呈现附加到旧内容的新内容。我什至尝试从 Chromium 的开发人员工具中调用 remove,但这也不起作用。但是,当我在浏览器中手动测试它时,remove 确实有效,但它在 Jasmine 中不起作用,而且它搞砸了我的测试。
【问题讨论】:
-
假设您的测试没有因为忘记包含 jQuery 源而失败,我们可能需要更多的上下文。扔一个 JSFiddle 什么的?
-
@brianvaughn 我想我能够弄清楚发生了什么。我在下面发布了答案。
标签: javascript jquery backbone.js jasmine