From 66c71344da3d1d56059118bdd5241b600e749168 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Tue, 10 Nov 2020 00:30:08 +0800 Subject: [PATCH] always show two decimals for money --- src/filters/currency.js | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/filters/currency.js b/src/filters/currency.js index 0d8cc5ee..2257c567 100644 --- a/src/filters/currency.js +++ b/src/filters/currency.js @@ -5,8 +5,23 @@ export default function ({ i18n }, value, currencyCode) { if (!utils.isNumber(value) && !utils.isString(value)) { return value; } - - value = value / 100; + + if (utils.isNumber(value)) { + value = value.toString(); + } + + if (value.length === 0) { + value = '0.00'; + } else if (value.length === 1) { + value = '0.0' + value; + } else if (value.length === 2) { + value = '0.' + value; + } else { + const integer = value.substr(0, value.length - 2); + const decimals = value.substr(value.length - 2, 2); + value = `${integer}.${decimals}`; + } + const currencyDisplayMode = settings.getCurrencyDisplayMode(); if (currencyDisplayMode === 'code') {