Ich habe diese Funktion, die einen externen Dienst aufruft, arbeitet die Ergebnisse und gibt dann eine einzelne Variable zurück.
Ich möchte diese Variable in eine Eingabe eingefügt werden, aber ich mache etwas falsch Ursache, anstatt das Formular am Ende der Funktion zu aktualisieren (wie erwartet) Ich muss die Funktion ein zweites Mal aufrufen und der Code aktualisiert die Feld mit dem Wert der ersten Ausführung ...
Dies ist der Controller:
Update-Feld, wenn Funktion die Berechnungen beendet
$scope.cercaClienteNomeCognome = function() {
if ($scope.nome == undefined){
var name = "";
} else name = angular.uppercase($scope.nome);
if ($scope.cognome == undefined){
var surname = "";
} else surname = angular.uppercase($scope.cognome);
var url = "servizi/getClienteNomeCognome?nomeCliente="+name+"&cognomeCliente="+surname;
esitoRicercaEstesa = TreeService.avviaRicercaEstesa(url);
if (esitoRicercaEstesa == "true") {
vm.cercaSecondario = TreeService.getProClie(); // THIS_LINE
}
};
vm.cercaSecondario ist das Feld, das ich zu aktualisieren bin versucht.
Dies ist der Service:
service.avviaRicercaEstesa = function(url) {
service.url = url;
$http.get(url)
.success(function(data, status, headers, config) {
service.apriModaleEstensioneRicerca(data);
})
.error(function(data, status, headers, config) {
toaster.error("[SERVIZIO RECUPERO CLIENTI] Errore durante il ritrovamento dei clienti");
});
}
service.setProClie = function (pro_clie) {
service.pro_clie = pro_clie;
}
service.getProClie = function() {
return service.pro_clie;
}
Beispiel: Ich habe den Code zum ersten Mal ausgeführt werden. Alles geht gut.
Wenn ich zu THIS_LINE komme, wird das Feld nicht aktualisiert.
Ich lasse dann den Code für die ZWEITE Zeit laufen und wenn ich zu THIS_LINE komme, aktualisiert das Feld mit dem Wert von der ERSTEN Ausführung ......
Was mache ich falsch ?!
Ich habe sogar versucht mit $ Timeout und $ evalASync, aber mit keinem Erfolg ...
Wo ist der Code für 'TreeService'? –