微信小程序block的使用教程


Posted in Javascript onApril 01, 2018

经过一年的发展,微信小程序发展火热,本期就介绍下小程序的一些使用。

在安卓中我们经常会使用ListView/GradeView/RecyclerView来实现展示循环数据。那么小程序中怎么到呢。其实很简单,使用block就可以了。

下面我们先看下效果图:

微信小程序block的使用教程

这个布局其实很简单,大致分为3部分,上+下(左75%,右25%)。这里就不在细说了。那么这里要怎么写wxml呢。下面贴代码:

微信小程序block的使用教程

这边很清晰的可以看出<block></block>这对标签,而数据源便是wx:for="{{goodlist}}"中的goodlist了。接着往下走,我们可以看到点击标签的时候有bindtap事件,这里就不做说明了。我们重点看下{{item.StartCity}},这是什么意思呢,其实这就是获取数据源中的数据,而item代表的是goodlist中的一条数据,StrrtCity等都是数据源中的一些具体属性。你可以更据需要直接调头你想要的字段名就可以了。block到此基本结束了。最后此处设置了一个view,用来代替当数据源为空时显示无数据页面提示。

下面顺便介绍下数据格式处理(时间格式转化):

在实际场景中我们可能会需要将时间转化为几分钟前,几小时前,几天前等。那么我们数据库中存放的一般是datetime格式数据。我们需要转化处理。

处理时间的时候需要注意的是:ios和android上的时间格式不同。ios时间是以2018/04/01,所以需要先将时间格式转化为/格式。不然你的小程序时间转化只会对安卓生效哦。具体转化代码:

for (var i = 0; i < goodsList.length; i++) {
 var PublishDatetime = goodsList[i].PublishDatetime.replace(/([\d\-]+)T(\d+:\d+)\:.*/, "$1 $2");//将带T的时间格式转化掉.
   PublishDatetime = PublishDatetime.replace(/-/g, "/");// 将格式‘-'转化为‘/'
//换算时间戳,计算得到与当前时间的差距
   var minute = 1000 * 60;
   var hour = minute * 60;
   var day = hour * 24;
   var halfamonth = day * 15;
   var month = day * 30;
   var now = new Date().getTime();
   var diffValue = now - new Date(PublishDatetime).getTime();
   //console.log("diffValue:" + diffValue);
   if (diffValue < 0) {
   return;
   }
   var monthC = diffValue / month;
   var weekC = diffValue / (7 * day);
   var dayC = diffValue / day;
   var hourC = diffValue / hour;
   var minC = diffValue / minute;
   if (monthC >= 1) {
   if (monthC <= 12)
    goodsList[i].PublishDatetime = "" + parseInt(monthC) + "月前";//将时间替换掉想要的数据
   else {
    goodsList[i].PublishDatetime = "" + parseInt(monthC / 12) + "年前";//将时间替换掉想要的数据
   }
   }
   else if (weekC >= 1) {
   goodsList[i].PublishDatetime = "" + parseInt(weekC) + "周前";//将时间替换掉想要的数据
   }
   else if (dayC >= 1) {
   goodsList[i].PublishDatetime = "" + parseInt(dayC) + "天前";//将时间替换掉想要的数据
   }
   else if (hourC >= 1) {
   goodsList[i].PublishDatetime = "" + parseInt(hourC) + "小时前";//将时间替换掉想要的数据
   }
   else if (minC >= 1) {
   goodsList[i].PublishDatetime = "" + parseInt(minC) + "分钟前";//将时间替换掉想要的数据
   } else {
   goodsList[i].PublishDatetime = "刚刚";//将时间替换掉想要的数据
   }
  }
 //最后将转化后的时间重新赋值给数据源

总结

以上所述是小编给大家介绍的微信小程序block的使用教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
JS类中定义原型方法的两种实现的区别
Mar 08 Javascript
BOM与DOM的区别分析
Oct 26 Javascript
js中设置元素class的三种方法小结
Aug 28 Javascript
js格式化时间小结
Nov 03 Javascript
node.js中的fs.lchown方法使用说明
Dec 16 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
Feb 16 Javascript
JavaScript记录光标在编辑器中位置的实现方法
Apr 22 Javascript
jQuery Validate插件实现表单验证
Aug 19 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
Dec 08 Javascript
简单实现js悬浮导航效果
Feb 05 Javascript
vue弹窗消息组件的使用方法
Sep 24 Javascript
解决bootstrap-select 动态加载数据不显示的问题
Aug 10 Javascript
JavaScript动态加载重复绑定问题
Apr 01 #Javascript
使用JSON格式提交数据到服务端的实例代码
Apr 01 #Javascript
Vue.js进阶知识点总结
Apr 01 #Javascript
vue 指定组件缓存实例详解
Apr 01 #Javascript
通过vue提供的keep-alive减少对服务器的请求次数
Apr 01 #Javascript
vue-cli项目优化方法- 缩短首屏加载时间
Apr 01 #Javascript
vuejs项目打包之后的首屏加载优化及打包之后出现的问题
Apr 01 #Javascript
You might like
smarty实例教程
2006/11/19 PHP
PHP远程连接MYSQL数据库非常慢的解决方法
2008/07/05 PHP
PHP中__autoload和Smarty冲突的简单解决方法
2016/04/08 PHP
PHP入门教程之表单与验证实例详解
2016/09/11 PHP
PHP与SQL语句写一句话木马总结
2019/10/11 PHP
javascript抽象工厂模式详细说明
2014/12/16 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
Jquery 整理元素选取、常用方法一览表
2016/11/26 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
浅谈一个webpack构建速度优化误区
2019/06/24 Javascript
JS数组方法reverse()用法实例分析
2020/01/18 Javascript
Windows系统下多版本pip的共存问题详解
2017/10/10 Python
Python实现的三层BP神经网络算法示例
2018/02/07 Python
python实现推箱子游戏
2020/03/25 Python
浅谈Pycharm中的Python Console与Terminal
2019/01/17 Python
face++与python实现人脸识别签到(考勤)功能
2019/08/28 Python
Python如何安装第三方模块
2020/05/28 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
2021/01/05 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
2021/01/12 Python
python 如何在测试中使用 Mock
2021/03/01 Python
利用css3径向渐变做一张优惠券的示例
2018/03/22 HTML / CSS
Boden英国官网:英国知名原创时装品牌
2018/11/06 全球购物
英国No.1体育用品零售商:SportsDirect.com
2019/10/16 全球购物
幼儿园师德师风学习材料
2014/05/29 职场文书
团干部培训方案
2014/06/03 职场文书
接待员岗位职责范本
2015/04/15 职场文书
2015年食堂工作总结报告
2015/04/23 职场文书
用电申请报告范文
2015/05/18 职场文书
初中运动会前导词
2015/07/20 职场文书
高中团支书竞选稿
2015/11/21 职场文书
私人贷款担保书该怎么写呢?
2019/07/02 职场文书
Python包管理工具pip的15 个使用小技巧
2021/05/17 Python
分享Python获取本机IP地址的几种方法
2022/03/17 Python