Sie müssen einen Dienst mit http-Aufruf für Ihre Server-Aktion erstellen. Die Antwort wird immer die Daten in einer korrekten Weise festlegen.
var app = angular.module('myApp', []);
app.service('getUserDetailsService', ['$http', function($http) {
this.getDetails = function() {
var details = {name:'',age:'',gender:'M'}
$http.get('Your action url')
.success(function(data) {
details.name = data.name;
details.age = data.age;
details.gender = data.gender;
})
.error(function() {
//handle error
});
return details;
};
}]);
//Controller
app.controller("userController",function($scope,getUserDetailsService){
$scope.getDetails = function() {
getUserDetailsService.getDetails().then(function(detail) {
$scope.details = detail;
}, function(error) {
});
}
$scope.getDetails() //Call whenever you want
});
Fiddle Link - https://jsfiddle.net/ftzyyt0L/3/
Es sieht aus wie es ein Problem mit Ihrem Design ist. Dies liegt daran, dass Sie versuchen, Ihr Modell im Service zu ändern. Dies ist nicht ratsam, versuchen Sie daher, die Daten vom Dienst an einen Controller zu übertragen und die Werte dort festzulegen. –