当前位置: 首页 > news >正文

微信小程序之Promise-Promise初始用

我们来尝试使用Promise。

1、需求,做个抽奖的按钮,

抽奖规则:

30%的几率中奖,中奖会提示恭喜恭喜,奖品为10万 RMB 劳斯莱斯优惠券,没中奖会提示再接再厉。

2、先搭界面:

<view class="title">抽奖规则:</view>
<view class="content">30%的几率中奖,中奖会提示恭喜恭喜,奖品为10万 RMB 劳斯莱斯优惠券,没中奖会提示再接再厉。</view>
<button class="btn" bind:tap="prizeDraw">开始抽奖</button>

3、css文件

page {height: 100vh;display: flex;flex-direction: column;justify-content: center;
}
.btn{margin-top: 50rpx;color: black;border: 1px solid black;
}.title{margin: 10rpx 40rpx;font-size: 50rpx;font-weight: 550;
}.content{margin: 20rpx 80rpx;font-size: 40rpx;
}

3、实现prizeDraw函数。

prizeDraw(){const p = new Promise((resolve,reject) => {setTimeout(() => {let n = Math.floor(Math.random()*100)+1;if (n <= 30) {resolve();} else {reject();}}, 1000);});p.then(() => {wx.showModal({title: '恭喜恭喜',content: '奖品为 10 万 RMB 劳斯莱斯优惠券',showCancel: false, // 隐藏取消按钮confirmText: '我知道了',});},() => {wx.showModal({title: '没抽中',content: '再接再厉',showCancel: false, // 隐藏取消按钮confirmText: '我知道了',});});}

代码说明:

a、const p = new Promise() ; //生成Promise对象。

b、里面有个参数,是函数,写法() => {}

c、函数里面有两个方法,resolve(解决)和reject(拒绝),函数里面的逻辑结果成功就调用resolve,失败就调用reject 。

d、然后运行Promise对象的then函数。

e、then里面带两个函数参数。

f、第一个用来执行成功的后续步骤,比如弹框之类,第二个用来执行失败的后续步骤

相关文章:

  • 华为模拟器练习简单的拓扑图(3台路由器和2台pc)
  • 线性Wi-Fi FEM被卷死,非线性FEM是未来?
  • 【学习笔记】机器学习(Machine Learning) | 第七章|神经网络(3)
  • Linux 搭建FTP服务器(vsftpd)
  • Spring Boot与Eventuate Tram整合:构建可靠的事件驱动型分布式事务
  • spring中的BeanFactoryAware接口详解
  • SpringBoot Day_03
  • 【Spark集成HBase】Spark读写HBase表
  • 一次Java Full GC 的排查
  • JAVA EE(进阶)_CSS
  • Jenkins与Maven的集成配置
  • framework 编译技巧
  • 使用 OpenCV 构建稳定的多面镜片墙效果(镜面反射 + Delaunay 分块)
  • c/c++的opencv膨胀
  • 解决SQL Server SQL语句性能问题(9)——创建和更新统计对象
  • 蓝桥杯 11. 保卫国王大道
  • 【Java高阶面经:数据库篇】18、分布式事务:如何在分库分表中实现高性能与一致性?
  • Cadence学习笔记之---PCB的布线与铺铜
  • OceanBase数据库全面指南(查询进阶篇DQL)
  • 机器学习在智能水泥基复合材料中的应用与实践
  • 深圳网站建设门户/seo导航站
  • 宁波网站优化软件/国家卫生健康委
  • 绵阳网站建设维护/今天合肥刚刚发生的重大新闻
  • 网站优化排名推荐/网络站点推广的方法
  • 前沿设计公司网站/凡科建站的免费使用
  • java做网站访问量并发/app推广引流方法