Ho scritto alcune associazioni personalizzate usando KnockoutJS. Non sono ancora sicuro di quando usare ko.utils.unwrapObservable(item)
Looking at the code, quella chiamata controlla fondamentalmente per vedere se item
è un osservabile. Se lo è, restituisci il valore (), se non lo è, restituisci semplicemente il valore. Guardando la sezione su Knockout sulla creazione di associazioni personalizzate, hanno la seguente sintassi:
var value = valueAccessor(), allBindings = allBindingsAccessor();
var valueUnwrapped = ko.utils.unwrapObservable(value);
In questo caso, invocano l'osservabile via ()
ma poi chiamano anche ko.utils.unwrapObservable
. Sto solo cercando di capire quando usare l'uno o l'altro o se dovrei seguire sempre lo schema sopra e usare entrambi.
ko.toJS(yourObject)
piuttosto che usareko.utils.unwrapObservable
, se stai cercando di ottenere una versione non incartata dell'oggetto da passare in un widget o in una libreria di terze parti. In generale, è più sicuro da usareko.utils.unwrapObservable
per supportare osservabili e non osservabili.