如何在 angularjs1 上使用 minFractionDigits
和 maxFractionDigits
过滤数字?
Angular2 的十进制管道过滤器为 described here .
number_expression | number[:digitInfo]
Formats a number as text. Group sizing and separator and other locale-specific configurations are based on the active locale.
where
expression
is a number:
digitInfo
is a string which has a following format: {minIntegerDigits
}.{minFractionDigits
}-{maxFractionDigits
}minIntegerDigits
is the minimum number of integer digits to use. Defaults to 1.minFractionDigits
is the minimum number of digits after fraction. Defaults to 0.maxFractionDigits
is the maximum number of digits after fraction. Defaults to 3.
我想在 angularjs1 上做这个。 我该怎么做?
最佳答案
我根据@Claies 的建议创建了一个自定义过滤器,如下所示。
angular.module('MyApp', []).filter('numberMinMaxFractionSize',function () {
return function (num, min, max) {
if (typeof num === "number") {
var options = {
minimumFractionDigits: min,
maximumFractionDigits: max,
}
return new Intl.NumberFormat(findLocale(), options).format(num);
} else {
return num;
}
};
});
function findLocale() {
try {
return (navigator.browserLanguage || navigator.language || navigator.userLanguage)
} catch (e) {
return "en-US";
}
}
html:
<div>{{value |numberMinMaxFractionSize:0:2}}</div>
关于javascript - angularjs1 上的 minFractionDigits 和 maxFractionDigits,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46536291/