评论

关于答题小程序倒计时结束如何交互的设计分析

关于答题小程序倒计时结束如何交互的设计分析

关于答题小程序倒计时结束如何交互的设计分析

~

之所以写这篇文章,是因为如下的场景出现造成一些目前的问题,对这些问题而进行的一系列思考

~

图1

~

图2

~

在目前的超时场景里面,提示了用户超时之后,在逻辑层面会自动将该条答题记录写入数据库,没有跟用户确认是否交卷

~

同时存在的一个问题是,

倒计时在用户离开页面的时候没有清理掉,也就是说如果用户暂时离开,倒计时会默认执行然后交卷,这个逻辑就比较严重了

用户可能有事临时离开,但是再回来发现已经交卷这是不被允许的

结果就导致,我今天不断清理得分为0的数据

~

后面我想应该从以下几方面来改进

1、倒计时结束,给用户交卷确认的弹窗,用户同意那么交卷;

2、用户离开页面时,清理计时器,这里对离开的定义要好好斟酌,可以是onhide,也可以是onUnload;

所以要对倒计时采用服务端时间进行计时,每次用户切回小程序要重新开始倒计时

这个地方略微复杂一些

3、其他优化

~

最后一次编辑于  2021-06-29  
点赞 0
收藏
评论

1 个评论

  • 第57个民族-上班族
    第57个民族-上班族
    2021-06-30

    用户离开页面时,清理计时器,这里对离开的定义要好好斟酌,可以是onhide,也可以是onUnload;

    这里其实可以改为,每次进入页面使用倒计时前,清理下计时器 就好了。不用判断用户是onHide还是onUnload.

    // 执行倒计时
      countDown(times) {
        clearInterval(timer)
        timer = setInterval(() => {
          if (times === 0) {
            clearInterval(timer)
            this.initData()
          } else {
            times -= 1
            this.timestamp(times)
          }
        }, 1000)
      },
    
    2021-06-30
    赞同 1
    回复 2
    • 马尚尚
      马尚尚
      2021-06-30
      妙,实在是妙哇,可以这样
      2021-06-30
      回复
    • 第57个民族-上班族
      第57个民族-上班族
      2021-06-30回复马尚尚
      这样还可以解决倒计时偶现乱跳的bug。
      2021-06-30
      回复
登录 后发表内容