You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In traditional Backbone, this will set both keys to their respective values and then fire change:key1 and change:key2 events. In other words, Backbone guarantees the atomicity of set calls with hashes. Mutators breaks this contract by firing each change event after it's value is set. So Mutators would set key1 to val1, then fire the change:key1 event, then set key2 to val2, then fire the change:key2 event.
I believe this is because of the way that calls to oldSet works in the Mutators source.
The text was updated successfully, but these errors were encountered:
a 'super-y' way. This is because calling Backbone's set at the beginning
of the set method causes Backbone to immediately emit change events,
before any mutators or nested properties are set.
Also, calling Backbone's set meant that every set of a mutator actually
created a property with that name in the attributes hash. This was
unexpected and occasionally problematic.
The new set now only adds attributes that the user specifically expected.
It also only emits change events after any mutators have been run and
nested properties set. (This fixesasciidisco#26).
@dsaffy I do not really have the time to support this project anymore, if you can get in a PR, I would be happy to merge it & to release a new version, thought.
Consider
model.set({key1: val1, key2: val2});
In traditional Backbone, this will set both keys to their respective values and then fire
change:key1
andchange:key2
events. In other words, Backbone guarantees the atomicity of set calls with hashes. Mutators breaks this contract by firing each change event after it's value is set. So Mutators would set key1 to val1, then fire thechange:key1
event, then set key2 to val2, then fire thechange:key2
event.I believe this is because of the way that calls to
oldSet
works in the Mutators source.The text was updated successfully, but these errors were encountered: