1、介绍
项目中出现四则运算精度错误问题,引入math.js来解决,并封装四则运算方法。
2、安装
npm install mathjs
3、引入
全局引入
//main.js引入import * as math from 'mathjs'Vue.prototype.$math = math组件中使用$math.add($math.bignumber(a), $math.bignumber(b));
按需引入
//组件中使用import {add,subtract,multiply,divide,bignumber} from 'mathjs'
4、封装
//新建utils.js 对公共方法进行封装import {add,subtract,multiply,divide,bignumber} from 'mathjs'const math = {//加法add(a,b){return add(bignumber(a), bignumber(b));},//减法subtract(a,b){return subtract(bignumber(a), bignumber(b));},// 乘法multiply(a,b){return multiply(bignumber(a), bignumber(b));},// 除法divide(a,b){return divide(bignumber(a), bignumber(b));}}export { math }//组件中使用import { math } from '@/utils/math'math.add(this.a,this.b)
5、附录
vue组件使用实例
<template><div id="app"><div><input type="text" v-model="a"> +<input type="text" v-model="b"> ={{add}}</div><div><input type="text" v-model="a"> -<input type="text" v-model="b"> ={{subtract}}</div><div><input type="text" v-model="a"> *<input type="text" v-model="b"> ={{multiply}}</div><div><input type="text" v-model="a"> /<input type="text" v-model="b"> ={{divide}}</div></div></template><script>import { math } from '@/utils/math'export default {name: 'home',computed:{add(){return math.add(this.a,this.b)},subtract(){return math.subtract(this.a,this.b)},multiply(){return math.multiply(this.a,this.b)},divide(){return math.divide(this.a,this.b)}},data() {return {a:1,b:2,}}}</script><style>#app {font-family: 'Avenir', Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50;margin-top: 60px;}</style>
