上文:Promise初始用
https://blog.youkuaiyun.com/cau_eric/article/details/148129017?spm=1001.2014.3001.5501
新需求:
中奖和未中奖弹框时将当时抽中的号码显示出来。
这个时候,我们可以用resolve和reject将随机数往下传。
然后调用then的时候将它们取出来使用。
新改的代码:
prizeDraw(){
const p = new Promise((resolve,reject) => {
setTimeout(() => {
let n = Math.floor(Math.random()*100)+1;
if (n <= 30) {
resolve(n);
} else {
reject(n);
}
}, 1000);
});
p.then((value) => {
wx.showModal({
title: '恭喜恭喜',
content: '奖品为 10 万 RMB 劳斯莱斯优惠券,您的中奖号码是 ' + value,
showCancel: false, // 隐藏取消按钮
confirmText: '我知道了',
});
},(reason) => {
wx.showModal({
title: '没抽中',
content: '再接再厉,您的号码是:' + reason,
showCancel: false, // 隐藏取消按钮
confirmText: '我知道了',
});
});
}
效果: