Von meinem eckigen Controller mache ich einen Funktionsaufruf, um $ http.post() Anfrage zu tun.
$scope.formSuccess = false;
$scope.submit = function(serviceName) {
submitRequest(serviceName);
if($scope.formSuccess) {
// do something
}
};
var submitRequest = function(serviceName) {
$http.post(serviceName, data, { headers: { 'Content-type': 'application/json' }
}).then(successFunction, errorFunction);
};
var successFunction = function(response) {
$scope.formSuccess =true;
};
der Code unter dem SubmitRequest() ausgeführt wird als die erste successFunction(), so dass der Code in Block ausgeführt wird, wenn nicht. wie kann ich das machen. Ich möchte nicht verschieben, wenn Block zu successFunction.
Das wird nicht funktionieren. Ihr Dienst wird aufgerufen, dann wird der Befehl if formSuccess ausgeführt und gibt immer false zurück, da Ihre http-Anfrage niemals vor dieser if-Anweisung erfolgt. Bitte lesen Sie die Dokumentation in Bezug auf http https://docs.angularjs.org/api/ng/service/$http Auch ein weiterer Link mit besseren Beispielen https://thinkster.io/http – Ronnie