亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JS Promises:分配給變量時,Promises 正在執行/解析

JS Promises:分配給變量時,Promises 正在執行/解析

慕勒3428872 2022-05-22 16:02:19
我正在嘗試將 a 分配new Promise()給一個變量,然后將該變量推送到一個數組,從而產生一個承諾數組。然后,我想稍后在單擊按鈕時執行這一系列承諾。但是在將 分配Promise給變量時,它會立即執行。ProcessExamples(){    swal({        title : 'Get Examples?',        confirmButtonText: 'Yes',    }).then( aRes => {        if( aRes.value ){            let lAllPromises = ExampleClass.GetExamplePromises();        }    });}static GetExamplePromises(){    let lPromises = [];    Examples.forEach( aExample => {        let lPromise = new Promise( ( resolve, reject ) => {            resolve( true );        });        lPromises.push( lPromise );    });    return lPromises;}當 Promise 數組返回給ProcessExamples方法時,所有的 Promise 都已解決。這不是我想要的,我該怎么辦?我試過用 - 替換 lambda ( resolve, reject ) => {},function( resolve, reject ) {}但什么也沒做。我已經確定它在被推送到Promises數組之前就解決了,所以我假設它在被分配到lPromise
查看完整描述

1 回答

?
守著星空守著你

TA貢獻1799條經驗 獲得超8個贊

但是當將 Promise 分配給變量時,它會立即執行。

是的,這就是 Promise 構造函數所做的(它立即執行它的回調函數并傳遞它解析和拒絕函數,回調可以在完成時調用)。

如果你想要一些你可以稍后執行的東西,那么使用一個函數而不是一個 Promise。(該函數可以返回一個承諾)。


查看完整回答
反對 回復 2022-05-22
  • 1 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號