微信小程序 数据展示格式处理

这种很常见,因为比如日期,后台会返回时间戳,但是我们前端呈现的方式有2018-1-2,有2018-01-02.有2018.03.08,有各种格式,所以我们需要自己去转格式,然后数组需要循环,这时候要怎样做呢?

现在有两种方式:

方式一:JS处理好后再进行展示

req.getUserEffectLog(start).then(res=>{
  let tempList=[];
  res.result.forEach(function(item,index){
    tempList[index]={};
    tempList[index].remarks = item.remarks;
    tempList[index].type = item.type;
    tempList[index].date = time.toDate(item.createTime, false);
    tempList[index].effectNum = item.effectNum;
  })
  this.setData({
    detailList: tempList
  })
})

代码说明:使用了一个中间数组,声明一下数组的某一项是个对象,然后再给对象赋具体的属性和值。

方式二 :使用wxs写方法,然后直接在wxml里边处理相应的需要处理的数据。

正常来说,这种方法可以更方便,但是,由于那个方法是公用的,所以如果js里边也要用,那么就重合了。所以,像这种具体使用那种方法的选择,最后还是平衡一下。

而且虽然wxs跟js很像,但是并不是,比如需要new Date就会报错。

wxs能处理的数据格式有限,但是处理价格保留两位小数还是可以做到的。
举个例子:

  1. 定义
var filters = {
  toFix: function (value) {
    var a = parseInt(value);
    return a//整数
  }
}
var filt = {
  toFix: function (value) {
    return value.toFixed(1)
  }
}
var Str = {
  toStr: function (value) {
    return value.split("#")[0] 
  }
}
module.exports = {
  toFix: filters.toFix,
  toFixs: filt.toFix,
  toStr: Str.toStr
}
  1. 引入
  2. 使用
    {{toDate.toDate(item.createTime,false)}}

你可能感兴趣的:(微信小程序 数据展示格式处理)