是否有可能在Knockout中更改订阅范围?
我有这样的事情:
element =
{
type: ko.observable()
name: ko.observable()
content: ko.observable()
}
element.type.subscribe(this._typeChanged.bind(element))
基本上,我想访问我所预订的对象.像我的代码中一样,绑定无法工作,因为它绑定到整个VeiwModel而不是对象.
解决方法:
可能的淘汰方法是,当您预订可观察对象时,您可以传递2个参数,第一个是回调,第二个是作用域/上下文,请尝试如下操作:
element.type.subscribe(this._typeChanged,element)
subscription函数接受三个参数:callback是在发生通知时调用的函数,target(可选)定义了回调函数中this的值,event(可选;默认为“ change”)是事件的名称接收通知.
参考http://knockoutjs.com/documentation/observables.html