1.約束の状況

        new Promise((resolve,reject)=>{
            console.log("第一层")
            resolve()
        }).then(_=>{
            console.log("then1")
            reject()    //无效
        }).then(_=>{
            console.log("then2Success")  //输出
        },_=>{
            console.log("then2Fail")  //未输出
        })

promise状態の拒否は常に渡され、後続の書き込みresolve()は状態を直接変更できないことがわかります。

では、どのように状態を変更するのですか?次のように

        new Promise((resolve,reject)=>{
            console.log("第一层")
            resolve()
        }).then(_=>{
            console.log("then1")
            return Promise.reject() //有效
        }).then(_=>{
            console.log("then2Success") //未输出
        },_=>{
            console.log("then2Fail") //输出
        })

おすすめ

転載: blog.csdn.net/weixin_43939111/article/details/112874147