بادئ ذي بدء ، يجب على الخادم الخاص بك إرجاع الأخطاء مع ذات الصلة رموز حالة خطأ HTTP (انظر رموز 4xx و 5xx). وبهذه الطريقة ، لا تتعامل إلا مع الأخطاء في رد اتصال الخطأ:
function onError (response){
switch (response.status) {
case 400:
case 404:
//etc...
response.data.errors.forEach(function(error){
$scope.alerts.push({type:'danger', msg: error.msg});
});
break;
case 500:
$scope.alerts.push({type:'danger', msg: "There was a problem saving your data: " + response.data});
break;
}
}
ومع ذلك ، إذا كان $ scope.user هو مثيل الموارد $, ، ثم ليس عليك الحصول عليها مرة أخرى من الخادم ، لن تغير طريقة $ Save () الكائن.
لنسخ القيم من كائن "المستخدم" الذي تم استرداده من الخادم إلى $ scope.user استخدم فقط Angular.Extend ()
angular.extend($scope.user, data) //this updates $scope.user with data attributes.
يجدر الإشارة إلى ذلك angular.extend
لا يؤدي نسخة عميقة ، إذا لزم الأمر ، استخدم jQuery.Extend:
jQuery.extend(true, $scope.user, data)