私はこの関数を呼び出して外部サービスを呼び出し、結果を処理してから1つの変数を返します。
私はこの変数を入力に挿入したいが、関数の最後にフォームを更新するのではなく、何か間違った原因を実行している(2番目の時間に関数を呼び出す必要がある)最初の実行の値を持つフィールド...
これはコントローラです:
関数が計算を完了したときにフィールドを更新します
$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は、私は更新しようとしている分野です。
これはサービスです:
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;
}
例:私が最初にコードを実行します。すべてがうまくいく。
私はTHIS_LINEになると、フィールドは更新されません。
その後、SECOND時間のコードを実行し、THIS_LINEに到達すると、最初の実行の値でフィールドが更新されます。
何が間違っていますか?
私は$ timeoutと$ evalASyncを使用してみましたが、成功しませんでした...
どこ 'TreeService'ためのコードはありますか? –