123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- 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;
- });
|