wangliang_wd

feat:优化早晚报评论显示

... ... @@ -574,7 +574,7 @@ export struct PaperSingleColumn999CardView {
.fontColor('#B0B0B0')
.margin({ left: this.item?.source.length > 0?0:16 })
if (this.item.objectType != '2' && this.interactData && this.interactData.commentNum && Number(this.interactData.commentNum) > 0) {
Text(this.interactData.commentNum + "评")
Text(this.handlerNum(this.interactData.commentNum.toString()) + "评")
.fontSize(12)
.fontColor('#B0B0B0')
.margin({ left: this.getPublishTime().length >0? 6:0 })
... ... @@ -671,4 +671,28 @@ export struct PaperSingleColumn999CardView {
}
return contentString;
}
/**
* 全域数字显示规则
* 1、当数量为千位以內时,显示数字,不保留小数点,比如 4585
* 2、当数量为万位~1亿时,显示xx 万,保留小数点后一位,比如1517.9w、2.9w
* 3、当数量为1亿~千亿时,显示XX 亿,保留小数点后一位,比如1517.9亿、2.9亿
* 4、不进行四舍五入
* 5、0 和空 不显示
*/
handlerNum(number: string) {
const num = number??'0';
if (Number.parseInt(num) <= 9999) {
return Number.parseInt(num).toString()
} else if (Number.parseInt(num) > 9999 && Number.parseInt(num) <= 99999999) {
const num1: string = num.slice(0, -4); // 万
const num2: string = num.slice(-4, -3); // 千
return num2 === '0' ? num1 +'万' : num1 + '.' + num2 + '万'
} else if (Number.parseInt(num) > 99999999) {
const num1: string = num.slice(0, -8); // 亿
const num2: string = num.slice(-8, -7);
return num2 === '0' ? num1 +'亿' : num1 + '.' + num2 + '亿'
}
return num
}
}
\ No newline at end of file
... ...