Skip to content

Commit cafa5bb

Browse files
authored
fix(amount): conversion of negative numbers to capitals (didi#511)
didi#510
1 parent e32342d commit cafa5bb

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

components/amount/number-capital.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,13 @@ const cnDecUnits = ['\u89d2', '\u5206', '\u6beb', '\u5398']
1111
const cnInteger = '\u6574' // 整 \u6574
1212
const cnIntLast = '\u5143' // 元 \u5143
1313

14+
const cnNegative = '\u8d1f' // 负
15+
1416
// Maximum number
1517
const maxNum = 999999999999999.9999
1618

1719
export default function(number) {
20+
let negative
1821
// Integral part
1922
let integerNum
2023
// Decimal part
@@ -31,6 +34,11 @@ export default function(number) {
3134

3235
number = parseFloat(number)
3336

37+
if (number < 0) {
38+
negative = true
39+
number = Math.abs(number)
40+
}
41+
3442
/* istanbul ignore if */
3543
if (number >= maxNum) {
3644
return ''
@@ -94,5 +102,9 @@ export default function(number) {
94102
} else if (decimalNum === '') {
95103
capitalStr += cnInteger
96104
}
105+
106+
if (negative) {
107+
capitalStr = `${cnNegative}${capitalStr}`
108+
}
97109
return capitalStr
98110
}

0 commit comments

Comments
 (0)