knockout.wrap

1.0.0 • Public • Published

knockout.wrap

Wrap a function and notify any subscribers when any observables inside have changed.

(Basically a ko.computed that doesn't actually calculate on change)

Example

var a = ko.observable(2),
    b = ko.observable(2);
    
function expensiveOperation() {
  console.log(a() + b());
}
 
var wrapped = ko.wrap(expensiveOperation);
wrapped.subscribe(function() {
  console.log('time to update');
});
 
// Call first time to identify dependencies
wrapped() // -> 4
 
// Some inside dependency updates, notify subscribers
a(3);     // -> time to update
 
// Don't call expensive operation unless explicitly called
wrapped() // -> 5

About

  • Author: Tim Hall
  • License: MIT
  • Dependencies: knockout

Readme

Keywords

none

Package Sidebar

Install

npm i knockout.wrap

Weekly Downloads

0

Version

1.0.0

License

MIT

Last publish

Collaborators

  • timhall