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
{{ message }}
This repository was archived by the owner on Apr 12, 2024. It is now read-only.
Repository navigation
This repository was archived by the owner on Apr 12, 2024. It is now read-only.
ngModelController: trigger change when only property of model changes #5449
Description
If you have an input box that is associated with a model that is an array (or an object), the update machinery ($formatter pipeline and so on) is not triggered if only a property on the array or object changes. This is because ngModelController watches the model without checking objectEquality.
The multiple select input has a kind of hack that triggers a call to $render if the model updates a property but this fails to call the $formatter pipeline. If we push a new option into the array then the select renders OK but a required validator would fail to update.
Suggested Fix
Asking the NgModelController to watch with object equality would probably be the simplest solution. There may be a performance impact, though since most models are not objects or arrays then this should short-circuit quite quickly for those values.
changed the title [-]fix(ngModelController): trigger change when only property of model changes[/-][+]ngModelController: trigger change when only property of model changes[/+]on Dec 10, 2014
Activity
[-]fix(ngModelController): trigger change when only property of model changes[/-][+]ngModelController: trigger change when only property of model changes[/+]antonkarsten commentedon Apr 1, 2015
it seems like this issue is still open. I would like to have a go at fixing it. Is there any new information or planning available for this issue?
I thought, it might be possible to make the deep-watching configurable through the ngModelOptions (default = false i.e. no deep watching).
InsomniacFury commentedon Jun 4, 2016
It be cool if the option allowed for either deep equality or for it to use a watchCollection under the hood, this keeps it flexible.
@Narretz @antonkarsten any update on putting this into the next 1.5.x release?