如何返回失败的承诺?

yay*_*wei 17 javascript callback promise angularjs

我如何返回一个承诺,但立即调用其失败块?这是一种可行的方法:

if (fail) {
    var q = $q.deferred();

    $timeout(function() {
        q.reject("")
    }, 1);

    return q.promise;
} else {
  return $http.get("/").then(function(data) {});
}
Run Code Online (Sandbox Code Playgroud)

Nik*_*los 18

if( fail ) {
    return $q.reject(yourReasonObject);
}
else ...
Run Code Online (Sandbox Code Playgroud)

这里参考:)