• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

投票小程序的界面怎么设计和弄一个实现

武飞扬头像
Monstar_0°-蒙
帮助1

投票评选活动小程序

这是一个投票小程序的首页,用户可以在这里看到已经发布的投票列表,每个投票项包括标题、选项、投票截止时间等信息。用户可以通过投票的标题和投票截止时间来了解投票的相关信息,并可以点击该投票按钮进行投票操作。

下面是一个简单的投票小程序的界面设计和实现。

用户登录

这是用户登录页面,用户可以选择使用微信账号进行登录,获取用户的openid、头像、昵称等信息,提高投票的安全性。

学新通

获取活动信息

监听页面初次渲染完成时,获取活动信息,主要包含投票评选活动的浏览量、累计投票、参与人数、活动结束时间等信息,用于在页面展示信息。

通过异步请求,读取voteActivity数据表的投票评选活动信息,这里使用了Collection.doc(),获取集合中指定记录的引用。方法接受一个 id 参数,指定需引用的记录的 _id。

实现代码如下:

// 显示 loading 提示框
      wx.showLoading({
        title: '加载活动中'
      });
      // 数据库集合的聚合操作实例 
      voteActivity
      .doc(id)
      .get()
      .then(res => {
        // 获取集合数据,或获取根据查询条件筛选后的集合数据。
        let data = res.data || {};
        let activityInfo = data;
  
        // 隐藏 loading 提示框
        wx.hideLoading();
      })

学新通

读取评选人物列表

在小程序端连接云数据库,读取评选人物列表;

关键代码如下:

// 连接云数据库
const db = wx.cloud.database();
// 获取集合的引用
const voteWorks = db.collection('voteWorks');
// 数据库操作符
const _ = db.command;

// 显示 loading 提示框
wx.showLoading({
  title: '拼命加载中'
});
// 数据库集合的聚合操作实例
voteWorks
  .where({
  _id: _.exists(true)
})
  .orderBy('name', 'desc')
  .get()
  .then(res => {
  // 获取集合数据,或获取根据查询条件筛选后的集合数据。
  let data = res.data || [];

  // 将数据从逻辑层发送到视图层,通俗的说,也就是更新数据到页面展示
  this.setData({
    participantList:data
  });

  // 隐藏 loading 提示框
  wx.hideLoading();
})

学新通

参与投票

这是投票页面,用户可以在此处选择自己支持的选项进行投票,如果已经投过票就可以查看此时的投票结果。

学新通

投票结果展示

投票截止后,用户可以在投票页面查看当前投票结果,并且结果会实时更新。管理员可以在后台排行榜页面中能够直观的看到当前投票的排名结果。

以上是一个简单的投票小程序的界面设计,具体还需要根据实际需求进行优化和调整。

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhibeccg
系列文章
更多 icon
同类精品
更多 icon
继续加载