1. ホーム
  2. angularjs

[解決済み] Angularの$q.whenはどのように機能するのですか?

2023-01-03 23:33:36

質問

どなたか $q.when がどのように機能するか説明できますか? 私は、どのように $http がどのように動作するかを分析しようとしており、これを見つけました。

var promise = $q.when(config);

そして、これがChromeコンソールからの設定オブジェクトです。

Object {transformRequest: Array[1], transformResponse: Array[1], cache: Object, method: "GET", url: "/schedule/month_index.html"…}
cache: Object
headers: Object
method: "GET"
transformRequest: Array[1]
transformResponse: Array[1]
url: "/schedule/month_index.html"
__proto__: Object

次に何が起こるのでしょうか?このオブジェクトはどのように解決され、あるいは拒否されるのでしょうか?

どのように解決されるのですか?

呼び出し $q.when はプロミスか他の型を取ります。もしそれがプロミスでないなら、プロミスでラップしてresolveを呼び出します。もし値を渡せば、それは決して拒否されることはないでしょう。

から ドキュメント :

値または(サードパーティの)プロミスである可能性のあるオブジェクトを$qプロミスにラップします。 これは、プロミスかもしれないしそうでないかもしれないオブジェクトを扱うときや、プロミスが信頼できないソースから来た場合に便利です。