收藏
回答

小程序页面的倒计时在苹果手机中不显示

框架类型 问题类型 操作系统 操作系统版本 手机型号 微信版本
小程序 Bug iOS 11.2.6 iphne7 2.6.1.75

在开发工具中是可以显示倒计时的


在预览和审核成功后的发布的小程序里面是不显示的




回答关注问题邀请回答
收藏

3 个回答

  • 晨婷
    晨婷
    2019-09-19

    count-down 在苹果机内不显示,请问楼主解决了吗,我已经把时间戳转化为通用的方法了,如下所示

    var lastStamp = Number(this.last_time)*1000
    let arr = this.date.split(/[-: ]/)
    let nndate = new Date(arr[0], arr[1] - 1, arr[2], arr[3], arr[4], arr[5])
     nndate = Date.parse(nndate) + lastStamp
    this.endTime = this.utils.formatStamp(nndate)


    2019-09-19
    有用
    回复 8
    查看更多(3)
  • ___呓语·ヾ🍓
    ___呓语·ヾ🍓
    2018-08-29
    let goodsList = [
      { actEndTime: '2019-05-01 10:00:43' },
      { actEndTime: '2018-09-01 11:00:00' },
      { actEndTime: '2018-06-01 12:45:56' },
      { actEndTime: '2018-07-01 15:00:23' },
      { actEndTime: '2019-11-23 17:00:22' },
      { actEndTime: '2019-01-14 19:00:44' },
      { actEndTime: '2019-01-21 21:00:34' },
      { actEndTime: '2018-11-17 09:00:37' },
      { actEndTime: '2018-12-21 05:00:59' },
      { actEndTime: '2018-9-19 07:00:48' },
      { actEndTime: '2018-10-28 03:00:11' }
    ]
    Page({
      data: {
        countDownList: [],
        actEndTimeList: []
      },
      onLoad() {
        let endTimeList = [];
        // 将活动的结束时间参数提成一个单独的数组,方便操作
        goodsList.forEach(o => { endTimeList.push(o.actEndTime) })
        this.setData({ actEndTimeList: endTimeList });
        // 执行倒计时函数
        this.countDown();
      },
      timeFormat(param) {//小于10的格式化函数
        return param < 10 ? '0' + param : param;
      },
      countDown() {//倒计时函数
        // 获取当前时间,同时得到活动结束时间数组
        let newTime = new Date().getTime();
        let endTimeList = this.data.actEndTimeList;
        let countDownArr = [];
     
        // 对结束时间进行处理渲染到页面
        endTimeList.forEach(o => {
          let endTime = new Date(o).getTime();
          let obj = null;
          // 如果活动未结束,对时间进行处理
          if (endTime - newTime > 0) {
            let time = (endTime - newTime) / 1000;
            // 获取天、时、分、秒
            let day = parseInt(time / (60 * 60 * 24));
            let hou = parseInt(time % (60 * 60 * 24) / 3600);
            let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
            let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
            obj = {
              day: this.timeFormat(day),
              hou: this.timeFormat(hou),
              min: this.timeFormat(min),
              sec: this.timeFormat(sec)
            }
          } else {//活动已结束,全部设置为'00'
            obj = {
              day: '00',
              hou: '00',
              min: '00',
              sec: '00'
            }
          }
          countDownArr.push(obj);
        })
        // 渲染,然后每隔一秒执行一次倒计时函数
        this.setData({ countDownList: countDownArr })
        setTimeout(this.countDown, 1000);
      }
    })
    <view class='tui-countdown-content' wx:for="{{countDownList}}" wx:key="countDownList">
      剩余
      <text class='tui-conutdown-box'>{{item.day}}</text>天
      <text class='tui-conutdown-box'>{{item.hou}}</text>时
      <text class='tui-conutdown-box'>{{item.min}}</text>分
      <text class='tui-conutdown-box tui-countdown-bg'>{{item.sec}}</text>秒
    </view>
    page{background-color: #eee;}
    .tui-countdown-content{
      height: 50px;
      line-height: 50px;
      text-align: center;
      background-color: #fff;
      margin-top: 15px;
      padding: 0 15px;
      font-size: 18px;
    }
    .tui-conutdown-box{
      display: inline-block;
      height: 26px;
      width: 26px;
      line-height: 26px;
      text-align: center;
      background-color: #000;
      color: #fff;
      margin: 0 5px;
    }
    .tui-countdown-bg{
      background-color: #DF0101;
    }

    在安卓手机和开发工具上   这个批量的倒计时都是正常的,在苹果手机上 预览和上线版的小程序不现实,但手机调试,控制台会打印出来倒计时是执行的,开发工具远程调试的话,是正常显示的。

    2018-08-29
    有用
    回复
  • 韬々
    韬々
    2018-04-02

    麻烦给个相关的代码片段(https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/minicode.html),以及小程序的appid。我们定位下问题

    2018-04-02
    有用
    回复 2
登录 后发表内容