const getDetail = ()=>{
return Promise((resolve)=>{
setTimeout(()=>{
// 获取detail,时间不确定
resolve(detail);
},Math.Random(5000))
})
}
const addDetail = ()=>{
getDetail().then((detail)=>{
// 增加detail
})
}
<Button onClick={addDetail}>getDetail</Button>
当我连续快速点击Button时,Promise结束增加detail时,由于时间不确定,最后detail的顺序可能不是点击的顺序。
现在想保证顺序,如何实现同一个Promise,一个结束才执行另一个。
场景不用太在意,只是举例想问 如何实现同一个Promise,一个结束才执行另一个。