forgeplus-react/src/forge/Utils/utils.js

56 lines
1.7 KiB
JavaScript

import default1 from '../../images/factory/default/1.png'
import default2 from '../../images/factory/default/2.png'
import default3 from '../../images/factory/default/3.png'
import default4 from '../../images/factory/default/4.png'
import default5 from '../../images/factory/default/5.png'
import default6 from '../../images/factory/default/6.png'
import default7 from '../../images/factory/default/7.png'
import default8 from '../../images/factory/default/8.png'
import { message } from 'antd'
export function formatNumber(num) {
if (num === undefined || num === null) return
if (num >= 1e9) {
return (num / 1e9).toFixed(1) + 'B'; // 十亿
} else if (num >= 1e6) {
return (num / 1e6).toFixed(1) + 'M'; // 百万
} else if (num >= 1e3) {
return (num / 1e3).toFixed(1) + 'K'; // 千
} else {
return num.toString(); // 小于 1000 的数字原样返回
}
}
export function formatNumberWithCommas(num) {
if (num === undefined || num === null) return
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
/**
* 下载
* @param url 下载地址
* @param name 下载名称
* @param msg 成功消息
*/
export const downloadFunc = (url, name) => {
const link = document.createElement('a')
link.href = url
link.download = name || 'download'
document.body.appendChild(link)
setTimeout(() => {
link.click()
if (url.startsWith('blob:')) {
URL.revokeObjectURL(url)
}
document.body.removeChild(link)
message.success('开始下载, 请稍后')
}, 50)
}
export const getDefaultImage = (id) => {
const defaultList = [default1, default2, default3, default4, default5, default6, default7, default8]
return defaultList[ id % 8 ]
}