簡體   English   中英

為什么我的決心不等待指定的時間?

[英]Why my resolve doesn't wait for the specified time?

我試圖在10秒后調用解決方法,但我想它直接被調用。

let timer = (time) => new Promise((resolve)=> { setTimeout( resolve("success"),time)});

timer(10000).then( (result) => {
    alert(result)
})

您正在將resolve()的返回結果傳遞給setTimeout。 您沒有將resolve()傳遞給setTimeout。

記住使用任何programmig語言(php,javascript,C,java等)進行的基本編程:

foo(bar())
// is the same as
temp = bar()
foo(temp)

因此,將resolve()傳遞給setTimeout的正確方法是:

setTimeout(() => resolve("success"),time)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM