Hep kendi ayarlayıcı gaz giderici o
sarabilirdiniz.
var myO = {
o: o, // original o
changed: false,
set: function (prop, val) {
this.o[prop] = val;
this[prop + "IsChanged"] = true;
},
get: function (prop) {
return this.o[prop];
}
};
myO.set("a", 2);
console.log(myO.aIsChanged); // true
Daha iyi bir çözüm bilginize, burada Underscore
kütüphanenin extend
yöntemini kullanıyorum Someting myO.on("change", function() { ... })
var myO = {
o: o, // original o
changed: false,
set: function (prop, val) {
this.o[prop] = val;
this.trigger("change", prop, val);
},
get: function (prop) {
return this.o[prop];
}
};
_.extend(myO, Backbone.events);
myO.on("change", function (prop, val) {
// Do stuff with the change
});
myO.set("a", 1);
exeute için Backbone.Events
gibi bir şey kullanarak etkinlik yürütmek olacaktır.
Her değişiklikten haberdar olmak istersiniz ya da kontrol etmek için bir yolunuz var mı? Sadece kontrol etmek istiyorsanız, nesnenin bir hash kodunu oluşturup gerektiğinde karşılaştırırım. – Nic
Sadece kontrol etmenin bir yolu var, fakat bu karmayı nasıl oluşturabilirim? –