約束の例

  いいえナンセンスない、スティッキーコード

    関数AJAX(メソッド、URL、データ){ 
        要求せ = 新しい)(XMLHttpRequestをします。
        戻り 新たな約束(関数(決意、リジェクト){ 
            request.onreadystatechange = 関数(){
                 場合(request.readyState === 4 ){
                     場合(request.status === 200 ){ 
                        解決(request.responseText); 
                    } そう{ 
                        (request.status)を拒否
                    } 
                } 
            }。
            request.open(メソッド、URL); 
            request.send(データ); 
        }); 
    } 
    のlet P =アヤックス( 'GET'、 'config.json' ); 
    p.then(機能(テキスト){ // 成功した場合AJAX 、コンテンツが応答で得られる
        、にconsole.log(テキスト)
    })。キャッチ関数 {(ステータス)// AJAXは、応答コード取得に失敗した場合
        はconsole.log(ステータス); 
    });

これらは、シミュレーションAJAXを実現しています

    せ約束= 新しいプロミス((決意、リジェクト)=> { 
        にconsole.log( "1" 
        リジェクト( "我错了" ); 
        解決( "123" ); 
    }); 
    promise.then(関数(データ){ 
        にconsole.log( "3" 
        はconsole.log(データ)
    }、関数(ERR){ 
        にconsole.log( "4" 
        はconsole.log(ERR)
    })
    はconsole.log( "2")

これらは、約束の実行順序をテストするために使用されています

おすすめ

転載: www.cnblogs.com/smlPig/p/10986315.html