繁体   English   中英

淘汰赛部分约束问题

[英]knockout partial binding issue

我刚遇到一个非常奇怪的问题,我有多个applyBindings(),但它们都针对不同的元素。 现在这一切都可以正常工作,因为所有资源加载完成后都会发生(yepnope完整的回调),但是现在(基于内部事件系统引发的事件)发生,这似乎有一个奇怪的错误(说视图模型没有可观察到的,但因为它没有在正确的视图中寻找)。

问题是最后一个绑定似乎出于某种原因会覆盖所有其他绑定,因此如果我有4个具有唯一ID的元素和4个分别绑定到其coresponding元素的视图模型,那么我希望绑定会像这样发生:

element_a -> view_model_a
element_b -> view_model_b
element_c -> view_model_c
element_d -> view_model_d

但是由于某些原因,绑定view_model_d时绑定似乎发生了变化,因此它们全部变为:

element_a -> view_model_d
element_b -> view_model_d
element_c -> view_model_d
element_d -> view_model_d

正如我之前所说的那样,这种方法很好用,但是由于我们转向了一种异步的方式来应用绑定,因此似乎有些破损,所有绑定元素都位于html中并且是自包含的(即没有一个是动态注入的,不要在DOM中重叠)。 同样,在Firebug中调试时,视图模型和元素正确且未定义,这可能解释了为什么最后一个调用会覆盖所有其他视图。

我会尝试做一个jsfiddle,但是由于项目的复杂性以及外部模板和依赖项,将无法实现。

万物都指向我在做错事,而不是KnockoutJS,但是我不明白为什么它过去可以正常工作,唯一改变的是应用绑定的顺序和时间。

是否有人见过applyBindings渗入其他元素或覆盖之前的先前绑定?

像往常一样,答案归结为我是个白痴。 由于我使用了一个外部模板加载器,该模板加载器使用templateUrl作为其选项之一,由于某种原因,它是templateurl,由于某种原因,它最初必须工作,但是由于现在加载的顺序,它正在重新加载同一页面,不是所需的模板,这意味着将重新加载整个页面绑定:(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM