小程序模板网

小程序ios上时间字符串转换为时间戳问题,上滑加载更多

一:ios上时间字符串转换为时间戳问题

分享者:栖木,来自原文地址 
给定一个时间字符串 var time="2017-02-27 16:42:53" js有三种转换为时间戳的方法:

1、var timestamp = Date.parse(time) 
2、var timestamp = time.getTime() 
3、var timestamp = time.valueOf() 
第一种方法只能精确到秒,后两种能精确到毫秒。 
然而相同的代码,在android上能正常执行,在ios上就会出错。

临下班来这么一出,被坑得贼惨,明天开始五一假期,只能晚上加班来解决小程序的这个坑。试过无数种方法后,最后用以下代码解决了问题:

 

  1. var date=time.substr(0,10)//2017-02-27
  2. var hour=time.substr(11,2).replace(/\b(0+)/gi,"") //16
  3. var minute=time.substr(14,2).replace(/\b(0+)/gi,"") //42
  4. var second=time.substr(17,2).replace(/\b(0+)/gi,"")//53
  5. var timestamp =parseInt(new Date(date).getTime() / 1000)+parseInt(hour)*3600+parseInt(minute)*60+parseInt(second)-28800//别问我为什么-28800,只能告诉你实践出真知
  6. var time=timestampFormat(timestamp)//timestampFormat:自定义的将时间戳转换为刚刚,昨天16:42等表达的方法
 

二:上滑加载更多

分享者:千一网络,来自原文地址

微信小程序自带有下拉刷新,但是没有自带上滑加载更多,不过网上说可以用scroll-view来实现。

但是 我并不推荐 scroll-view ,不过我们还是先看看用 scroll-view 的做法,再介绍一下我的做法。

 

  1. <scroll-view style="height:500rpx;" scroll-y="true" bindscrolltoupper="loadNew" bindscrolltolower="loadMore">
  2. <block wx:for="{{items}}">
  3. <view class="section">
  4. <video src="{{item.videoUrl}}" controls></video>
  5. <text>{{item.title}}</text>
  6. </view>
  7. </block>
  8. </scroll-view>

一定要有两个属性:

  • 一是在样式中指定 height。
  • 二是指定scroll-y 为 true。

然后就可以用bindscrolltoupper监测滑到最上头了,用bindscrolltolower监测滑到最下头了。理论上它可以实现上拉刷新、下拉加载更多两种效果,但是效果不是很好。

而且它是滑到端头就响应事件,并不是需要继续拉一段距离才响应,这点不如enablePullDownRefresh完美。

还有:微信并不推荐在 scroll-view 中使用 textarea、map、canvas、video 组件。

还有: 在滚动 scroll-view 时会阻止页面回弹,所以在 scroll-view 中滚动,是无法触发 onPullDownRefresh。

所以还是介绍新的方案吧:onReachBottom

虽然也没有实现继续拉一段距离才响应,但是整个效果比 scroll-view 好多了。

 

  1. Page({
  2. onReachBottom: function()
  3. {
  4. this.loadList();
  5. }
  6. })


易优小程序(企业版)+灵活api+前后代码开源 码云仓库:starfork
本文地址:https://www.eyoucms.com/wxmini/doc/course/23612.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询