【发布时间】:2015-01-30 19:18:02
【问题描述】:
我有一些使用在 HTML 中具有一些 Knockout 绑定的夹具(加载了 jasmine-jquery)运行的功能测试。在每个测试开始时,我想从处于初始状态的 viewModel 开始。
如果我在 beforeEach() 中使用 viewModel 的新实例调用 applyBindings(),我会从 Knockout 收到此错误
错误:您不能对同一个元素多次应用绑定。
如果我尝试恢复现有 viewModel 的属性以匹配其初始状态,我仍然会收到错误消息。我相信这是因为每次测试后都会删除夹具的 HTML - 这可能会破坏绑定?
我还尝试了came up when Googling 的建议,即在 Knockout 中使用 cleanNode 函数。这不是 API 的一部分(它仅设计用于 Knockout 内部使用),无论我尝试什么都没有解决问题。
感觉我对此采取了错误的方法。 tl;博士;其他人如何使用 Jasmine 测试 Knockout?
感谢您的帮助
【问题讨论】:
-
你为什么要问类似的问题? stackoverflow.com/questions/27247822/… 如果您有更多内容要添加和删除另一个,只需编辑其中一个即可。
-
另一个问题非常具体。这是一个关于测试 Knockout 的模式的更开放的问题。
-
是的,两者的背景故事都是一样的。但我提出了两个不同的问题,并期待不同的答案。
标签: javascript jquery mvvm knockout.js jasmine