首頁 >微信小程式 >小程式開發 >微信小程式中資料過濾的實作方法介紹(程式碼)

微信小程式中資料過濾的實作方法介紹(程式碼)

不言
不言轉載
2018-10-19 14:46:213127瀏覽

本篇文章帶給大家的內容是關於微信小程式中資料過濾的實現方法介紹(程式碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

因為微信小程式的wxml和js的內部實作機制是分開編譯的。所以在wxml是沒辦法呼叫js的函數的。這會導致WXML缺少一個我們常用的功能,那就是沒有辦法在視圖層對資料進行格式化處理。例如我們從後端取得到一個包含了時間戳記資料的數組,然後需要在介面上把這些日期都格式化顯示為2017-01-01這種格式的日期形式,在Vue, Angular之類的前端Web框架中,一般在視圖層都提供如filter之類對應比較好用的方案。 vue是沒有這些方法的。但是小程式推出了wxs類型檔案就是解決這類問題的。

使用

先新建filter.wxs檔案(也可以直接寫在wxml檔案中,但這中公共方法還是應該單獨建立檔案的)。

var formatDate = function (timestamp,option) {
  var date = getDate(parseInt(timestamp));
  var year = date.getFullYear()
  var month = date.getMonth() + 1
  var day = date.getDate()
  var hour = function(){
    if (date.getHours()<10){  //补‘0’
      return &#39;0&#39; + date.getHours()
    }
    return date.getHours();
  }
  var minute = function () {
    if (date.getMinutes() < 10) {
      return &#39;0&#39; + date.getMinutes()
    }
    return date.getMinutes();
  }
  var second = function () {
    if (date.getSeconds() < 10) {
      return &#39;0&#39; + date.getSeconds()
    }
    return date.getSeconds();
  }

  if (option==&#39;notime&#39;){  //不需要时间
    return year + &#39;-&#39; + month + &#39;-&#39; + day;
  }

  return year + &#39;-&#39; + month + &#39;-&#39; + day + &#39; &#39; + hour() + &#39;:&#39; + minute() + ":" + second();
}

module.exports = {
  formatDate: formatDate,
};

在wxml檔案中使用

<wxs src=&#39;filter.wxs&#39; module=&#39;filter&#39; />
  <view>日期:{{filter.formatDate(要过滤的时间戳)}}</view>

注意事項

#wxs是不同於js檔案的。所以很多js的api是不支援的。具體支援看官方文件。

#

以上是微信小程式中資料過濾的實作方法介紹(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除