第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

怎么解決promise只執(zhí)行一次的問題

怎么解決promise只執(zhí)行一次的問題

梵蒂岡之花 2018-09-30 11:07:34
下面是一個簡單的promise調(diào)用new Promise(function(success,){     setTimeout(function(){success()},1000); }).then(function(){     console.log(1) });可以看到,控制臺能夠輸出1Promise 的then方法可以做到回調(diào)功能,但是如果是這種情況呢?function test(back){     setInterval(function(){back()},1000)     } test(function(){     console.log(1); });//可以不停的輸出1而如果用promise做不到:new Promise(function(success,){     setInterval(function(){success()},1000); }).then(function(){     console.log(1) });Promise 除了then,catch還有隱藏的高級功能么?
查看完整描述

2 回答

?
慕斯709654

TA貢獻1840條經(jīng)驗 獲得超5個贊

題主沒有給出應用的場景,簡單說一下我的理解(也是小白兔階段);
首先個人認為題主看待Promise有一點點偏激,并非一切情況都要使用Promise的then,鏈式調(diào)用是為了解決異步的可讀性和可維護性的問題,題主當前的情況完全可以return一個立即執(zhí)行的fn(也就是用不上then關(guān)鍵字);
其次,Promise是會有一些其他關(guān)鍵字,比如alljoin,map(這個不確定)等等,是適用不同情況的請求場景;
最后,以上只是個人見解,可能因為學習所限會有理解錯誤和偏差,請題主權(quán)當參考.

查看完整回答
反對 回復 2018-10-09
?
胡子哥哥

TA貢獻1825條經(jīng)驗 獲得超6個贊

Promise 只能執(zhí)行一次這一點是不會改變的
但是可以根據(jù)不同的業(yè)務(wù)來進行封裝
重復調(diào)用 你可以每次重新聲明一個Promise來調(diào)用

function p(){
  return new Promise(resolve =>{
    setTimeout(resolve,1000)
  }).then(()=>{ 
     console.log(1)
  })
}

setInterval(p,1000)


查看完整回答
反對 回復 2018-10-09
  • 娜夜微涼
    娜夜微涼
    試了一下 重復調(diào)用 第二次就走不進去了啊
  • 2 回答
  • 0 關(guān)注
  • 3026 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號