最佳答案
我已经使用 KnockoutJS 编写了一些自定义绑定。我仍然不确定什么时候使用 ko.utils.unwrapObservable(item)看看代码,这个调用基本上检查看看 item是否是一个可观察的。如果是,返回值() ,如果不是,只返回值。查看 Knokout 中关于创建自定义绑定的部分,它们具有以下语法:
var value = valueAccessor(), allBindings = allBindingsAccessor();
var valueUnwrapped = ko.utils.unwrapObservable(value);
在这种情况下,它们通过 ()调用可观察到的,但随后也调用 ko.utils.unwrapObservable。我只是想弄清楚什么时候使用一种或者另一种,或者我是否应该总是遵循上面的模式,两种都使用。