|
因為微信小程序的(de)(de)wxml和js的(de)(de)內部實現(xian)機(ji)制是(shi)分開(kai)編譯的(de)(de)。所以在(zai)(zai)wxml是(shi)沒辦法調用(yong)js的(de)(de)函數(shu)的(de)(de)。這(zhe)(zhe)會導致WXML缺少一個(ge)我(wo)(wo)們(men)常用(yong)的(de)(de)功能,那就是(shi)沒有辦法在(zai)(zai)視圖層對數(shu)據進行格(ge)式(shi)(shi)化處理(li)。比如我(wo)(wo)們(men)從后端(duan)獲取(qu)到(dao)一個(ge)包含了(le)時間戳數(shu)據的(de)(de)數(shu)組,然后需(xu)要在(zai)(zai)界面上把這(zhe)(zhe)些日期(qi)(qi)都格(ge)式(shi)(shi)化顯(xian)示為2017-01-01這(zhe)(zhe)種(zhong)格(ge)式(shi)(shi)的(de)(de)日期(qi)(qi)形式(shi)(shi),在(zai)(zai)Vue, Angular之類的(de)(de)前端(duan)Web框架中,一般在(zai)(zai)視圖層都提供(gong)了(le)如filter之類相應比較(jiao)好用(yong)的(de)(de)方(fang)案(an)。vue是(shi)沒有這(zhe)(zhe)些方(fang)法的(de)(de)。但是(shi)小程序推出了(le)wxs類型文件(jian)就是(shi)解決這(zhe)(zhe)類問(wen)題的(de)(de)。 使用首先新(xin)建(jian)filter.wxs文件(也可以直接寫在wxml文件中(zhong),但是(shi)這中(zhong)公共方法(fa)還是(shi)應該單(dan)獨建(jian)文件的)。
<wxs src='filter.wxs' module='filter' />
<view>日期:{{filter.formatDate(要過濾的時間戳)}}</view>
注意事項
wxs是不同于js文件的。所以很多js的api是不支持的。具體支持看官方文檔。 |