對于已經(jīng)獲取的數(shù)據(jù)往往還需要一點點小的計算,比如說兩個數(shù)相除只取兩位小數(shù)尺借。
wxs常用于數(shù)據(jù)處理比被。
WXS 代碼可以編寫在 wxml 文件中的 <wxs> 標(biāo)簽內(nèi)蚊伞,或以 .wxs 為后綴名的文件內(nèi)。
情況一 在使用的wxml中寫
適用于只在此文件中使用的模塊定義
step 1
定義這個模塊 寫好事件處理函數(shù) 并且暴露出去
<wxs module="m1">
var getEvery = function(totle,each) {
var eachPrice=(totle/each).toFixed(2);
return eachPrice;
}
module.exports.getEvery = getEvery;
</wxs>
此代碼寫在了wxml文件中
每一個 .wxs 文件和 <wxs> 標(biāo)簽都是一個單獨的模塊援雇。
每個模塊都有自己獨立的作用域矛渴。
即在一個模塊里面定義的變量與函數(shù),默認(rèn)為私有的惫搏,對其他模塊不可見具温。
一個模塊要想對外暴露其內(nèi)部的私有變量與函數(shù),只能通過 module.exports 實現(xiàn)筐赔。
step 2
用在wxml中:模塊名.方法名(參數(shù)一 铣猩,參數(shù)二);參數(shù)為 page.js 里面的 array
<text wx:if="{{goods.childNum>1?'true':''}}">折算后單個: ¥{{m1.getEvery(goods.retailPriceJia,goods.childNum)}} </text>
即可茴丰。
情況二 在引用文件外邊定義
wxs 不依賴于運行時的基礎(chǔ)庫版本达皿,可以在所有版本的小程序中運行。所以不需要在意版本
step 1 .wxs 文件
在微信開發(fā)者工具里面贿肩,右鍵可以直接創(chuàng)建 .wxs 文件峦椰,在其中直接編寫 WXS 腳本。
step 2 單文件定義
可以暴露變量名和函數(shù)汰规,可以暴露一個汤功,也可以暴露多個
var filters = {
toFix: function (value) {
return value.toFixed(2)//此處2為保留兩位小數(shù)
}
}
var filt = {
toFix: function (value) {
return value.toFixed(1)//此處1為保留1位小數(shù)
}
}
module.exports = {
toFix: filters.toFix,
toFixs: filt.toFix
}
該 .wxs 文件可以被其他的 .wxs 文件 或 WXML 中的 <wxs> 標(biāo)簽引用。
step 3 在其他頁面使用
<wxs module="filt" src="../components/getfixed.wxs"></wxs>
<text class='items-price-now'>¥{{filt.toFixs(item.retailPriceJia)}}</text><text style='color:#989898;font-size:22rpx;'>/個</text><text class='items-price-old'>市場價:¥{{filt.toFixs(item.retailPrice)}}</text>
至此溜哮,完成滔金。