Promise を返す非同期関数 {
Promise Values を解決中
必要なトークン値を取得するには、「.then」ハンドラーを Promise にチェーンする必要があります。このハンドラーは、解決済みの結果がすでに利用可能であるか保留中であるかに関係なく、キャプチャします。
Promise 解決の詳細let AuthUser = (data) => { return google.login(data.username, data.password).then((token) => { return token; }); }; let userToken = AuthUser(data); userToken.then((result) => { console.log(result); // "Some User Token" });
Promise は、次のことを義務付ける Promises/A 仕様に準拠しています。特定の解決手順:
「.then」ハンドラーの場合値を返すと、Promise はその値に解決されます。
各 ".then" ハンドラーの解決された値は、 next ハンドラーの入力により、一連の非同期操作が可能になります。次の例は、この動作を示しています。
値の戻り値:
連鎖された Promise の戻り値:
function initPromise() { return new Promise((res, rej) => { res("initResolve"); }); } initPromise() .then((result) => { console.log(result); // "initResolve" return "normalReturn"; }) .then((result) => { console.log(result); // "normalReturn" });
以上が非同期関数が値の代わりに `Promise { }` を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。