Knockout.js:ko.applyBindings(viewModel) - >是否有一个完整的applyBinding事件?

Eul*_*nky 6 knockout.js

我有几个knockoutjs foreach模板绑定,它<div class='item' />在我的页面上创建了大约100个不同的位置 - 除了我在调试器中停止并在应用jquery绑定之前等待一秒钟之后,我的后续jQuery调用都无法正常工作:

ko.applyBindings(viewModel);

$(".item").draggable(); 
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个dataBound事件,我可以使用它来绑定viewModel之后应用我的绑定,但我找不到任何东西.

mad*_*kay 1

正如 Tyrsius 提到的,您可以使用 afterRender 处理程序,您还可以使用 afterAdd 处理程序,具体取决于您是否想从列表中添加/删除项目。foreach模板绑定文档都涵盖了这些内容。

您还可以编写自己的自定义绑定来执行相同的操作,类似于此示例。我推荐这是最可维护和可重用的选项,但有时它是矫枉过正的。

也就是说,如果您想使用可拖动,那么已经有一个很棒的自定义绑定,您也许可以适应。

希望这可以帮助。