uniapp 全局設(shè)置千位符

我們?cè)陧?yè)面上需要渲染數(shù)據(jù)的時(shí)候,例如:99999;需要按照千分位顯示成方便閱讀的格式99,999。
個(gè)人覺(jué)得最好的辦法就是寫(xiě)一個(gè)過(guò)濾器,將所有的數(shù)據(jù)都用這個(gè)過(guò)濾器過(guò)濾一下。
因?yàn)樯婕暗臄?shù)據(jù)比較多,我就將這個(gè)過(guò)濾器掛載到了全局,也可以在單獨(dú)頁(yè)面引入使用

1.main.js 全局方法
// 在 main.js 文件中直接寫(xiě)方法
Vue.filter('unitConverter', (value)=>{
  if (!value) return 0
  // 獲取整數(shù)部分
  const intPart = Math.trunc(value)
  // 整數(shù)部分處理,增加,
  const intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,')
  // 預(yù)定義小數(shù)部分
  let floatPart = ''
  // 將數(shù)值截取為小數(shù)部分和整數(shù)部分
  const valueArray = value.toString().split('.')
  if (valueArray.length === 2) { // 有小數(shù)部分
    floatPart = valueArray[1].toString() // 取得小數(shù)部分
    return intPartFormat + '.' + floatPart
  }
  return intPartFormat + floatPart
})
index.vue
<view>{{riskAll| unitConverter}}</view>





2.home.vue 單頁(yè)面方法
filters:{
  unitConverter function(value){
    if (!value) return 0
    // 獲取整數(shù)部分
    const intPart = Math.trunc(value)
    // 整數(shù)部分處理,增加,
    const intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,')
    // 預(yù)定義小數(shù)部分
    let floatPart = ''
    // 將數(shù)值截取為小數(shù)部分和整數(shù)部分
    const valueArray = value.toString().split('.')
    if (valueArray.length === 2) { // 有小數(shù)部分
      floatPart = valueArray[1].toString() // 取得小數(shù)部分
      return intPartFormat + '.' + floatPart
    }
    return intPartFormat + floatPart
  })
},
<view>{{riskAll| unitConverter}}</view>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容