首页 > 其他分享 >vue 千分位过滤器

vue 千分位过滤器

时间:2023-12-11 15:58:33浏览次数:31  
标签:floatPart vue return 千分 value valueArray 过滤器 numberToCurrency

image

1.创建numberToCurrency.js文件

// 千分符过滤器
export function numberToCurrencyNo(value) {
  if (!value) return 0 // 判断value 是否是以0开头的负数
  if (value < 0 && value > -1) {
    return value
  } else {
    // 将数值截取为小数部分和整数部分
    const valueArray = value.toString().split('.')
    // 获取整数部分
    const intPart = valueArray[0] // 整数部分处理,增加,
    const intPartFormat = intPart.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,') // 预定义小数部分
    let floatPart = ''
    if (valueArray.length === 2) {
      // 有小数部分
      floatPart = valueArray[1].toString() // 取得小数部分
      return intPartFormat + '.' + floatPart
    }
    return intPartFormat + floatPart
  }
}

2.main.js导入

import { numberToCurrencyNo } from '@/utils/numberToCurrency'
// 配置全局过滤器,实现数字千分位格式
Vue.filter('numberToCurrency', numberToCurrencyNo)

3.使用

<span>{{ cost | numberToCurrency }}</span>

标签:floatPart,vue,return,千分,value,valueArray,过滤器,numberToCurrency
From: https://www.cnblogs.com/icey-Tang/p/17894595.html

相关文章

  • Vue—实现文件上传(多文件),图片上传
    一、图片上传//template<inputtype="file"accept="image/*"@change="changeImage()"ref="avatarInput"style="display:none"......
  • GitLab部署vue项目至GitLab Pages流水线配置
    image:node:16.15.0#表示使用有nodejs环境的docker,自己项目用的什么版本这就写什么版本stages:-deploypages:#!!!必须!!!使用pages关键字stage:deployscript:-npminstall-npmrunbuild-rm-rfpublic#删除public目录,开发过......
  • Springboot+Vue实现多文件上传
    多文件上传,后端接收到多次请求vue实现<el-uploadclass="upload-demo"action="http://10.240.46.88:8081/upload1":on-preview="handlePreview":on-remove="handleRemove":multiple="multiple"......
  • vue如何实现文件上传及预览
    vue文件上传及预览<template><divid="file"><inputname="files" id="uploaderInput" type="file" accept="images/*" multiple@change="change"/><divclass="file_upload">......
  • vue3中自定义ref实现防抖
    import{customRef}from"vue";/***@description自定义ref实现防抖*@param{String}value*@param{Number}delay*@returns*/exportconstdebounceRef=(value,delay)=>{lettimer;returncustomRef((track,trigger)=>({......
  • VUE框架CLI组件化全局事件总线实现原理------VUE框架
    <template> <div> <!--内置函数的实现步骤--> <!--提供事件源,给事件源绑定事件,编写回调函数,将回调函数和事件进行绑定--> <!--等待事件的触发,事件触发执行回调函数--> <!--组件的自定义事件实现步骤--> <button@click="Hello()">你好</button> <!--给Us......
  • [Vue]脚手架创建项目
    文档:https://cli.vuejs.org/zh/(脚手架最新版本是4.x) 1.如果安装速度过慢,可以指到国内安装地址:npmconfigsetregistryhttps://registry.npm.taobao.org2.首次安装(全局):npminstall-g@vue/cli 3.切换到创建项目的目录,使用命令创建项目 vuecreatexxx4.选择使用......
  • Vue 3 使用moment设置显示时间格式
    一.问题:Vue3如何使用moment设置显示时间格式。二.分析问题:在Vue3中,因为过滤器(filter)已经被废弃,取而代之的是全局方法(globalmethod)。slot-scope也被弃用使用v-slot代替。无法使用过滤器设置显示时间格式。三. 解决问题。  (1)在vueui安装moment依赖,搜索安装即可。......
  • vue3学习之createApp(App).mount('#app')
    装了vue-cli之后,新建个项目跑起来了,碰上个没理解的问题,不知道createApp(App).mount('#app')挂载的这个id=“app”从哪冒出来的 用命令创建出来的项目,components/HelloWorld.vue,App.vue,main.js中都没有估摸着得是底层的,网上找一圈,各路大神基本是一句带过,可能是太简单了,没......
  • 使用Vue和Element UI进行文件上传的简单教程
    当使用Vue和ElementUI进行文件上传时,你可以按照以下步骤进行操作:步骤1:安装Vue和ElementUI在你的Vue项目中使用npm或者yarn安装Vue和ElementUI:npminstallvueelement-ui步骤2:创建上传组件创建一个Vue组件来处理文件上传的逻辑。在组件的<template>中添加一个文件上传的按钮和......