当前位置: 首页 > wzjs >正文

企业网站推广建设小红书seo排名规则

企业网站推广建设,小红书seo排名规则,安陆建设局网站,嘉兴网站建设外包公司vue项目如何解决金额计算超过15出现精度丢失问题 (1)使用big.js解决 npm i big.js示例 应收金额 收款金额 不能大于累计实收金额 金额15位 小数点2位,出现精度丢失 500000000000000 0.02 !500000000000000.02 使用big.js的几…

vue项目如何解决金额计算超过15出现精度丢失问题

(1)使用big.js解决

npm i big.js

示例

应收金额 + 收款金额 不能大于累计实收金额
金额15位 + 小数点2位,出现精度丢失
500000000000000 + 0.02 !=500000000000000.02

使用big.js的几个方法来转换解决

<template><h-bill-container:content="content":router="backUrl":billHead="billHead"v-loading="mainLoading"><el-collapse v-model="collapseName" class="collase-box" id="collse"><el-form:model="model"ref="contractRef"label-width="150px":rules="rules"class="inspect-form"><el-collapse-item name="3" title="收款信息" id="3"><el-row :gutter="20"><el-col :lg="8" :md="8"><el-form-item label="应收金额:" :prop="model.receiveType == 0 ? '' : 'receivableAmount'"><el-inputclearable:disabled="model.receiveType && model.receiveType == 1 ? false : true"v-model="model.receivableAmount"placeholder="自动带出"><span slot="append"></span></el-input></el-form-item></el-col><el-col :lg="8" :md="8"><el-form-item label="累计实收金额:"><el-inputv-model="model.receiveAmountHis"disabledplaceholder="自动带出"><span slot="append"></span></el-input></el-form-item></el-col></el-row></el-collapse-item><el-collapse-item name="4" title="收款流水信息" id="4"><el-row :gutter="20"><div class="inspect-table"><el-table class="table-supplier" :data="model.detailList" border:header-cell-style="{background:'#F5F7FA',color:'#333333', height: '45px',textAlign: 'center'}"><el-table-column label="收款金额(元)" min-width="40"><template slot="header"><span class="star">*</span><span>收款金额()</span></template><template slot-scope="scope"><el-form-itemlabel-width="0px"class="isError":prop="'detailList.' + scope.$index + '.receiveAmount'":rules="rules.receiveAmount"><el-inputv-model="scope.row.receiveAmount"placeholder="请输入金额"class="select-width"maxlength="15"clearable></el-input></el-form-item></template></el-table-column></el-table></div></el-row></el-collapse-item></el-form></el-collapse></h-bill-container>
</template>
import Big from 'big.js';export default {components: {AnchorPoint,proSelect,projectSelect,},data() {return {model: {approvalAmount:'',//批复金额receivableAmount: null, //应收金额receiveAmountHis: "", //累计实收金额},oldModel: {},rules: {receivableAmount: [{ required: true, validator: this.checkReceivableAmount}],receiveAmount: [{ required: true, validator: this.checkReceiveMoney, trigger: ['blur','change'] }],},};},methods: {//校验应收金额checkReceivableAmount(rule, value, callback) {var reg = /^-?[0-9]+(\.[0-9]{1,2})?$/;const num1 = Big(Number(this.model.receiveAmountHis))const num2 = isNaN(Number(this.model.detailList[0].receiveAmount)) ? undefined :  Big(Number(this.model.detailList[0].receiveAmount))const result = isNaN(Number(num2)) ? undefined : num1.plus(Number(num2)).toString();//   const num2 = Big(Number(this.model.detailList[0].receiveAmount))//   const result =  num1.plus(num2).toString();if (value === "" || value == undefined || value == null) {callback(new Error(`请输入应收金额`));return;} else if (!reg.test(value)) {callback(new Error(`只能输入正数,负数或0,且最多保留两位小数`));return;} else if(this.model.detailList[0].receiveAmount) {if(new Big(value).lt(new Big(result))) {callback(new Error(`收款金额与累计实收金额的总和不能大于应收金额`));return;}else {callback();return;}}else {callback();}},//校验收款金额checkReceiveMoney(rule, value, callback) {var reg = /^-?[0-9]+(\.[0-9]{1,2})?$/;const num1 = Big(Number(this.model.receiveAmountHis))//累计实收金额const num2 = Big(Number(this.model.receivableAmount))//应收金额if(isNaN(Number(value))) {this.resultStatus = false}else {this.result = num1.plus(Number(value)).toString();this.resultStatus = true}var reg = /^-?[0-9]+(\.[0-9]{1,2})?$/;if (value === "" || value == undefined || value == null) {callback(new Error(`请输入收款金额`));return;} else if (!reg.test(value)) {callback(new Error(`收款金额只能输入正数,负数及0,且最多保留两位小数`));return;}else if(this.resultStatus){if(num2 > 0 && new Big(num2).lt(new Big(this.result))) {callback(new Error(`收款金额与累计实收金额的总和不能大于应收金额`));return;}else if(num2 < 0 && new Big(this.result).lt(new Big(num2))) {callback(new Error(`收款金额与累计实收金额的总和不能小于应收金额`));return;}else {callback();return;}} else {callback();return;}},},
};
</script>
http://www.dtcms.com/wzjs/486349.html

相关文章:

  • 泊头做网站找哪家好东莞网站推广营销网站设计
  • 备案个人网站做淘宝客seo外链专员
  • 外国优秀网站营销推广有哪些形式
  • 网站建设需求信息企业微信营销系统
  • 可以做手机网页的网站网站建设与管理就业前景
  • 淄博做淘宝网站军事新闻最新
  • 日照疫情最新消息今天封城了网站优化排名哪家好
  • 怎么知道自己网站的权重网络推广有哪些
  • wordpress国内视频网站百度上看了不健康的内容犯法吗
  • 做网站具体指什么徐州seo推广优化
  • 素材网站无水印怎么才能在百度上做引流呢
  • 一个人做网站用什么技术甲马营seo网站优化的
  • 成都市城乡建设局网站百度收录的网站多久更新一次
  • 网站描述怎么设置百度关键词快排
  • 重庆专业平台推广公司优化网站技术
  • phpwind转WordPress抖音优化排名
  • 阜阳做网站seo关键词优化怎么收费
  • 网站备案提交信息吗今日网站收录查询
  • 荥阳网站建设sem账户托管
  • github允许做网站服务器产品推销方案
  • 天马网络网站搜索引擎seo如何优化
  • 做ppt好的网站有哪些重庆网站建设
  • 做网站如何推广长春网站关键词排名
  • 如何做网站seo市场调研报告最佳范文
  • 网站建设实验分析总结2023年6月份疫情严重吗
  • 台州服务网站网站维护需要多长时间
  • 虚拟币交易网站源码电视剧排行榜百度搜索风云榜
  • 常宁市网站建设海外自媒体推广
  • 网站公告怎么做seo在线优化工具
  • 国外做彩票网站推广是合法的吗郑州竞价托管公司哪家好