在调用ko.applyBindings()
之后生成的视图是否存在或脚手架是否异步发生?
谢谢!
答案 0 :(得分:12)
ko.applyBindings
是同步通话。
可能存在绑定具有特殊代码以在setTimeout中执行操作的情况,但通常情况并非如此。
在components中添加Knockout 3.2后,组件是异步的。使用Knockout 3.3,如果加载了viewmodel / template,将有一个同步渲染组件的选项。
答案 1 :(得分:2)
Knockout是同步的。不仅是RP Niemeyer所说的ko.applyBindings
功能已经说过了。当您将值设置为绑定到视图的可观察属性时,您可以100%确定执行后
myViewModel.myObservableProperty(newValue);
您的观点已更新。 实际上,一个observable属性是一个函数,当你为你的observable属性设置一个新值时,你只需要调用一个带有新值作为参数的函数:这个函数在它的体内将同步触发'change'事件(我不是t确切知道事件的名称。)
希望它有所帮助..抱歉,但我的英语有点生疏。