filter 全局使用金额
main.js
1
2
3
4
5
/* 过滤器 */
import * as filters from "@/filter";
Object.keys(filters).forEach((key) => {
Vue.filter(key, filters[key]);
});
filter.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//定义number_format方法
function number_format(number, decimals, dec_point, thousands_sep) {
decimals = 2; //这里默认设置保留两位小数,也可以注释这句采用传入的参数
/*
* 参数说明:
* number:要格式化的数字
* decimals:保留几位小数
* dec_point:小数点符号
* thousands_sep:千分位符号
* */
number = (number + "").replace(/[^0-9+-Ee.]/g, "");
var n = !isFinite(+number) ? 0 : +number,
prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
sep = typeof thousands_sep === "undefined" ? "," : thousands_sep,
dec = typeof dec_point === "undefined" ? "." : dec_point;
var s = n.toString().split(".");
var re = /(-?\d+)(\d{3})/;
while (re.test(s[0])) {
s[0] = s[0].replace(re, "$1" + sep + "$2");
}
if ((s[1] || "").length < prec) {
s[1] = s[1] || "";
s[1] += new Array(prec - s[1].length + 1).join("0");
} else {
s[1] = s[1].substring(0, prec); //小数点位数超出长度时截取前面的位数
}
return s.join(dec);
}
export {
number_format, //通过此处导出方法
};
使用
1
2
3
4
import { number_format } from "@/filter";
This post is licensed under CC BY 4.0 by the author.