app.isLogin() // ログインするかどうかを決定した後 .then(RES => { この.setData({ ログイン:trueに }、RES2 => { // クリアを一時的に不可欠な リターン app.clearTempScore() //が約束を返します }) } ) .then(RES => { にconsole.log(' .then .............. ' ) }) 。キャッチ(ERR => { にconsole.log(ERR) })
1、setDataメソッドは約束を返さ
直接ステータスがapp.clearTempScore保留返された場合でも、第二.then()を実行する(通常復帰の約束を、状態が保留されている)(.then実行しません)
setDataメソッドが非同期要求であるので、我々は時にコールバックRES2知らない、プロミスが返さ(:持っているかのように理解されます)
この場合は、.then()約束を返さないに等しい直接約束を返しません
app.isLogin() // ログインするかどうかを決定した後 .then(RES => { }) .then(RES => { にconsole.log(' .then .............. ' ) }) 。キャッチ(ERR => { にconsole.log(ERR) })
図2は、第一.thenは())(.then直接プロミス、第2コードシーケンスの実行を返しません
図3に示すように、第一.then()は直接リターン約束を有し、コード)は、プロミスの戻りを待つ決意または状態に拒否し、その後第二.thenを(実行します