import Vue from 'vue'; // 保留两位小数 Vue.filter('keepTwoNum', function (val) { let value = Number(val); return value.toFixed(2); }); // 格式化数字三位加一逗号 Vue.filter('NumFormat', function (value) { if (!value) return ''; /*原来用的是Number(value).toFixed(0),这样取整时有问题,例如0.51取整之后为1 */ /*后来改成了 Number(value)|0,但是输入超过十一位就为负数了 */ var intPart = Number(value) - (Number(value) % 1); // 获取整数部分 var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'); //将整数部分逢三一断 return intPartFormat; }); //链接加时间戳 Vue.filter('timestamp', function (link) { return link + '?t=' + new Date().getTime(); }); //截取第一张照片且判断是否有图片,没有图片输入默认图片 Vue.filter('firstImg', function (arr, sizeType, imgType) { //图片类型判断 if (arr) { if (arr instanceof Array) { img = arr[0]; } else { img = arr.split(',')[0]; } } return img; }); //七牛云压缩图片 Vue.filter('miniImg', function (img, quality) { return img + '?imageMogr2/quality/' + quality; }); //单位米m转换为单位千米km,提醒:传递参数不要带引号,如kmUnit('100')会返回0m。 Vue.filter('kmUnit', function (m) { var v; if (typeof m === 'number' && !isNaN(m)) { if (m >= 1000) { v = (m / 1000).toFixed(2) + 'km'; } else { v = m + 'm'; } } else { v = '0m'; } return v; }); // 订单状态 Vue.filter('filterOrderStatus', function (status) { status = Number(status); switch (status) { case 1: return '停放中'; case 2: return '欠费未缴'; case 3: return '欠费'; case 4: return '已完成'; default: return '未知'; } }); // 支付状态 Vue.filter('filterPayStatus', function (status) { status = Number(status); switch (status) { case 0: return '未支付'; case 1: return '已支付'; case 2: return '支付中'; case 3: return '支付失败'; default: return '未知'; } }); // 汽车类型 Vue.filter('energyTpye', function (value) { status = Number(value); switch (status) { case 1: return '汽油车'; case 2: return '新能源'; default: return '汽油车'; } }); // 免费时长 Vue.filter('freeDuration', function (value) { let createTime = new Date(value).valueOf(), freeTime = new Date('2022-06-20 00:00:00').valueOf(), freeTxt = '0天0时15分0秒'; if (createTime > freeTime) { freeTxt = '0天0时15分0秒'; } return freeTxt; });