Knockout.js 敲除:当所有绑定都在页面上完成时,如何捕获事件?

Knockout.js 敲除:当所有绑定都在页面上完成时,如何捕获事件?,knockout.js,Knockout.js,我在这里看到了类似的问题,讨论了特定元素绑定的结尾,通常建议使用aferRender,但是对于整个页面绑定事件呢?有吗?我需要运行一些jQuery代码,这些代码不能与绑定并行工作。ko.applyBindings()是一个阻塞调用 为什么不在执行ko.applyBindings()之后简单地执行jQuery代码?ko.applyBindings()是一个阻塞调用 为什么不在执行ko.applyBindings()?之后简单地执行jQuery代码呢?从技术上讲,这可能是一种解决方法,但在我的例子中

我在这里看到了类似的问题,讨论了特定元素绑定的结尾,通常建议使用
aferRender
,但是对于整个页面绑定事件呢?有吗?我需要运行一些jQuery代码,这些代码不能与绑定并行工作。

ko.applyBindings()
是一个阻塞调用

为什么不在执行
ko.applyBindings()
之后简单地执行jQuery代码?

ko.applyBindings()
是一个阻塞调用


为什么不在执行
ko.applyBindings()

之后简单地执行jQuery代码呢?

从技术上讲,这可能是一种解决方法,但在我的例子中,它是一个单独的文件(mvc术语中是单独的部分视图),jQuery代码应该位于它自己单独的逻辑中,而ko.applyBindings()位于另一个主页面中,我不希望它们尽可能地松散耦合。@YMC:将javascript放在视图中是一种反模式。我读了这篇文章,但老实说,我不明白为什么将javascript代码直接放在页面中是反模式的。据我所知,它只是说,如果你有一堆javascript代码,那么将其组织成嵌套闭包更容易维护,我没有笨重的代码,只有几行代码。@YMC:你看到这个片段了吗?大多数人(包括我自己)开始编写JavaScript代码时,都是在.js或HTML文件中添加一个又一个函数。虽然这种方法肯定没有什么错,因为它完成了任务,但在处理大量代码时,它会很快失去控制。当将函数集中到一个文件中时,查找代码可能很困难,重构代码是一项艰巨的任务(除非您有像Resharper 6.0这样的好工具),变量范围可能会成为一个问题,对代码进行维护可能是一场噩梦,尤其是如果您不是最初编写代码的话。@YMC:您的代码现在可能并不笨拙,但它很可能会在以后被扩展,可能是由您以外的开发人员扩展的,这时它可能会成为维护的噩梦另外,javascript代码单独存在于自己的文件中时可读性更高。从技术上讲,这可能是一种解决方法,但在我的例子中,它是一个单独的文件(mvc术语中的单独部分视图),jQuery代码假定位于它自己单独的逻辑中,而ko.applyBindings()位于另一个主页中,我不希望它们尽可能地松散耦合。@YMC:将javascript放在视图中是一种反模式。我读了这篇文章,但老实说,我不明白为什么将javascript代码直接放在页面中是反模式的。据我所知,它只是说,如果你有一堆javascript代码,那么将其组织成嵌套闭包更容易维护,我没有笨重的代码,只有几行代码。@YMC:你看到这个片段了吗?大多数人(包括我自己)开始编写JavaScript代码时,都是在.js或HTML文件中添加一个又一个函数。虽然这种方法肯定没有什么错,因为它完成了任务,但在处理大量代码时,它会很快失去控制。当将函数集中到一个文件中时,查找代码可能很困难,重构代码是一项艰巨的任务(除非您有像Resharper 6.0这样的好工具),变量范围可能会成为一个问题,对代码进行维护可能是一场噩梦,尤其是如果您不是最初编写代码的话。@YMC:您的代码现在可能并不笨拙,但它很可能会在以后被扩展,可能是由您以外的开发人员扩展的,这时它可能会成为维护的噩梦此外,当javascript代码单独存在于其自己的文件中时,它的可读性要高得多。