打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
小程序实现活动倒计时功能

需求分析

电商小程序中通常有这么一个场景,要开展一项促销活动,活动有截止日期。用户打开小程序的时候就可以倒计时,提醒用户抓紧下单购买。我们本次的实战开发就以这个场景为例,来介绍一下低代码工具是如何实现倒计时的。

1 创建数据源

因为我们要记录活动的截止日期和活动的状态,需要创建一个数据源用来保存信息。登录控制台,点击新建数据模型

输入模型的名称,标识由系统自动生成

增加数据源的字段,我们添加活动截止日期、活动状态两个字段

截止日期我们选择日期时间类型,活动状态选择枚举类型,枚举值有未开始、进行中和已结束

2 创建模型应用

数据源建好了之后,就可以根据数据源生成模型应用了。点击新建模型应用

勾选我们的数据源,完成页面的创建

点击导航菜单完成菜单的配置

点击发布,将应用发布到企业工作台

在企业工作台中录入数据

3 创建自定义应用

低码工具中的自定义应用对应着我们的小程序,登录控制台,点击新建自定义应用

4 倒计时功能开发

打开应用后,点击代码编辑器,我们先创建一个公共函数用来返回当前还剩下多次时间

输入如下代码

export function countDown(date) {   let now = new Date().getTime();  let distance = date - now;

let days = Math.floor(distance / (1000 * 60 * 60 * 24)); let hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); let minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); let seconds = Math.floor((distance % (1000 * 60)) / 1000);

return days + "天 " + hours + "小时 " + minutes + "分钟 " + seconds + "秒" ;}

然后在页面的生命周期函数中贴入如下代码,调用我们的倒计时函数

export default {  async onPageLoad(query) {    //console.log('---------> LifeCycle onPageLoad', query)    const result = await app.cloud.callModel({      name: 'hd_9o91cf2',      methodName: 'wedaGetRecords',      params: {

} }) let countDownDate = result.records[0].jzrq; let now = new Date(); let hdzt = result.records[0].hdzt if (countDownDate > now && hdzt == "2") { $page.dataset.state.timer = setInterval(function () { $page.dataset.state.daojishi = app.common.countDown.countDown(countDownDate); console.log($page.dataset.state.daojishi == "0天 0小时 0分钟 0秒"); if ($page.dataset.state.daojishi == "0天 0小时 0分钟 0秒") { console.log("清除倒计时") clearInterval($page.dataset.state.timer); } }, 1000); } }, onPageShow() { //console.log('---------> LifeCycle onPageShow') }, onPageReady() { //console.log('---------> LifeCycle onPageReady') }, onPageHide() { //console.log('---------> LifeCycle onPageHide') }, onPageUnload() { //console.log('---------> LifeCycle onPageUnload') },}

新建一个变量用来显示倒计时

放入一个文本组件,绑定我们的变量

之后页面就开始进入倒计时的状态

总结

本篇我们带着大家实现了一下倒计时的功能,有的初学者认为低代码就是拖拖拽拽开发功能。其实对于简单业务确实是这样的,但是你的应用一旦开发,必然会面临逐步的深入,在这些深入的场景中还是需要通过代码来写逻辑的。这也是低代码的特点,它是少代码,而不是说一点代码也不写。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
手把手教你微信小程序实战开发(八):小程序事件讲解
微信小程序入门学习,借助云开发动态更换swiper图片数据,小程序轮播图动态更新
微信小程序<span style="color: rgb(0, 0, 0); font-size: 14px; font-weight: 400;">麦当劳点餐)+爬虫</span>
小程序动态调用函数
小程序箭头函数
微信小程序云开发修改数据学习心得
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服