public
Last active — forked from eligrey/object-watch.js

watch the changes of some object or attribute

  • Download Gist
README.md
Markdown

It is really usefull!

seems to have some conflicts with jquery... I used a lot of jquery functions and seems it become undefined when i just include this script on my pages

Thank you very much! I've updated the gist! I think now you are able to use JQuery properly! =)

the method attributes() was removed, it is not necessary anymore

Otherwise, you've got EmberJS for those kind of stuff...

EmberJS is pretty much similar to BackboneJS, isn't it?

The purpose of WatchJS is to give freedom to the developer.

"with Watch.JS you will not have to change your way to develop"

WatchJS use your objects, anyway you want to build them.

EmberJS force you to use his constructor. I dont like it

It is not that obvious from the readme that watchAll only watches for properties that were defined at the moment of call to watchAll.

E.g.

var obj = {
    attr1: 0,
};

ex3.watch(function(){
    alert("Something was changed");
});

ex3.attr0 = 1; //triggers the observer; the alert is shown.
ex3.attr1 = 1; //does not trigger the observer; the alert is not shown.

@penartur it is explained in the paragraph "Chill out, no surprises, new attributes will not be considered"

This is really useful. Thanks. One question: when watching more than one properties, is there a way to see what and how it was changed? i.e.:

o.watch(["x","y","z"], function (id, oldval, newval) {
console.log( "o." + id + " changed from " + oldval + " to " + newval );
});

With the new version of Watch.JS it is possible

Here is a sample:
http://jsfiddle.net/XnbXS/1/

Read the short-full-documentation:
https://github.com/melanke/Watch.JS

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.