Consider this Plunkr .
Inside my watch observer, I would like to update the property as promised.
- Is changing the values ββin the
$$v property correct? - If not, what should I do?
Here is the HTML:
<!DOCTYPE html> <html id="ng-app" ng-app="myAngularApp"> <head> <script data-require=" angular.js@ *" data-semver="1.2.0-rc2" src="http://code.angularjs.org/1.2.0-rc.2/angular.js"></script> <script src="script.js"></script> </head> <body ng-controller="MyController"> <input ng-model="myDto.Weight" />{{myDto.Status}} </body> </html>
Here is the javascript:
var myDto = {Weight: 200, Status: 'Acceptable'}; var myAngularApp = angular.module('myAngularApp', []); myAngularApp.factory('myService', function($q){ return { getMyDto: function(){ var deferred = $q.defer(); deferred.resolve(myDto); return deferred.promise; } }; }); myAngularApp.controller('MyController', function MyController($scope, myService){ $scope.myDto = myService.getMyDto(); $scope.$watch('myDto.Weight', function(newVal, oldVal){ if (newVal < 150) { $scope.myDto.$$v.Status = 'Too Light!';
angularjs promise
Jim G.
source share