filter.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. import Vue from 'vue'
  2. // 保留两位小数
  3. Vue.filter('keepTwoNum', function(val) {
  4. let value = Number(val)
  5. return value.toFixed(2)
  6. });
  7. // 格式化数字三位加一逗号
  8. Vue.filter('NumFormat', function(value) {
  9. if (!value) return '';
  10. /*原来用的是Number(value).toFixed(0),这样取整时有问题,例如0.51取整之后为1 */
  11. /*后来改成了 Number(value)|0,但是输入超过十一位就为负数了 */
  12. var intPart = Number(value) - Number(value) % 1; // 获取整数部分
  13. var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'); //将整数部分逢三一断
  14. return intPartFormat;
  15. });
  16. //链接加时间戳
  17. Vue.filter("timestamp", function(link) {
  18. return link + '?t=' + new Date().getTime();
  19. });
  20. //单位米m转换为单位千米km,提醒:传递参数不要带引号,如kmUnit('100')会返回0m。
  21. Vue.filter("kmUnit", function(m) {
  22. var v;
  23. if (typeof m === 'number' && !isNaN(m)) {
  24. if (m >= 1000) {
  25. v = (m / 1000).toFixed(2) + 'km'
  26. } else {
  27. v = m + 'm'
  28. }
  29. } else {
  30. v = '0m'
  31. }
  32. return v;
  33. });
  34. // 订单状态
  35. Vue.filter("filterOrderStatus", function(status) {
  36. status = Number(status);
  37. switch (status) {
  38. case 1:
  39. return '停放中'
  40. break;
  41. case 2:
  42. return '欠费未缴'
  43. break;
  44. case 3:
  45. return '欠费'
  46. break;
  47. case 4:
  48. return '已完成'
  49. break;
  50. default:
  51. return '未知'
  52. break;
  53. }
  54. });
  55. // 支付状态
  56. Vue.filter("filterPayStatus", function(status) {
  57. status = Number(status);
  58. switch (status) {
  59. case 0:
  60. return '未支付'
  61. break;
  62. case 1:
  63. return '已支付'
  64. break;
  65. case 2:
  66. return '支付中'
  67. break;
  68. case 3:
  69. return '支付失败'
  70. break;
  71. default:
  72. return '未知'
  73. break;
  74. }
  75. });
  76. // 汽车类型
  77. Vue.filter("energyTpye", function(value) {
  78. status = Number(value);
  79. switch (value) {
  80. case 1:
  81. return '汽油车'
  82. break;
  83. case 2:
  84. return '新能源'
  85. break;
  86. default:
  87. return '汽油车'
  88. break;
  89. }
  90. });