WXS 与 JavaScript 是不同的语言,有自己的语法,并不和 JavaScript 一致
- 新建一个filter.wxs文件
var unit = {
// 将分转为元并保留两位小数
moneyFilter: function (val) {
if (!val) return
val /= 100;
return val.toFixed(2);
},
// 对手机号进行星号处理
phoneFilter: function (val) {
if (!val) return
return val.substring(0, 3) + '****' + val.substring(7);
},
// 将名字进行星号处理
nameFilter: function (val) {
if (!val) return
var a = []
for (var i = 0; i < val.length; i++) {
a[i] = ''
}
val = val.substring(0, 1) + a.join('*')
return val
},
// 对总金额进行过滤
totalFilter: function (val) {
if (!val) return
var total = 0;
for (var i = 0; i < val.length; i++) {
val[i].Price /= 100;
total += val[i].Price || 0;
}
return total.toFixed(2);
},
// 对支付状态进行过滤
payStutas: function (val) {
// if (!val) return
var store = [
{
id: 0, text: '待付款', color: '#00b578' },
{
id: 1, text: '待支付', color: '#00b578' },
{
id: 2, text: '超时', color: '#ff976a' },
{
id: 3, text: '用户取消', color: '#a9a9ad' },
{
id: 4, text: '支付成功', color: '#007AFF' },
{
id: 5, text: '正在付款', color: '#07c160' },
{
id: 6, text: '退款', color: '#ff976a' },
{
id: 7, text: '冻结', color: '#323233' },
{
id: 9, text: '商家取消', color: '#a9a9ad' },
]
for (var i = 0; i < store.length; i++) {
if (val == store[i].id) return store[i]
}
},
// 将时间戳转为 / 形式
timeFilter: function (val) {
if (!val) return
var date = getDate(parseInt(val));
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = function () {
if (date.getHours() < 10) {
//补‘0’
return '0' + date.getHours()
}
return date.getHours();
}
var minute = function () {
if (date.getMinutes() < 10) {
return '0' + date.getMinutes()
}
return date.getMinutes();
}
var second = function () {
if (date.getSeconds() < 10) {
return '0' + date.getSeconds()
}
return date.getSeconds();
}
return year + '/' + month + '/' + day + ' ' + hour() + ':' + minute() + ":" + second();
},
}
module.exports = {
moneyFilter: unit.moneyFilter,
phoneFilter: unit.phoneFilter,
nameFilter: unit.nameFilter,
timeFilter: unit.timeFilter,
totalFilter: unit.totalFilter,
payStutas: unit.payStutas,
}
- 引用
<wxs src="../../utils/filter/filter.wxs" module="filter" />
<text style="color:{
{
filter.payStutas(item.PayStatus).color}}">
{
{filter.payStutas(item.PayStatus).text}}
</text>
<text>¥{
{filter.moneyFilter(detItem.Price)}}</text>