前言
本文主要介绍在vuecli3
中如何引入bignumber.js
,并用其解决浮点数精度丢失的问题,使得前端也能放心的进行浮点数的计算~~下面开始正文~
相关链接
引入方式
CDN引入
在vuecli3
中,CDN引入插件主要分为四个步骤:// 第一步 在index.html中引入 <script src="https://cdn.bootcdn.net/ajax/libs/bignumber.js/9.0.1/bignumber.min.js"></script> // 第二步 在vue.config.js文件中配置 configureWebpack: { externals: { 'bignumber': 'BigNumber' } } // 第三步 在main.js中应用 const BigNumber = require('bignumber'); Vue.use(BigNumber); // 第四步 在业务代码中使用 test(){ const n1 = new BigNumber(0.1); const n2 = n1.plus(0.2) return n2; },
把包安装到本地
// 第一步 npm install npm install bignumber.js // 引入 我是在全局的mixins.js文件中引入的 // 关于mixins可以查看vue官网或者我的另一篇文章 import BigNumber from 'bignumber.js'; let mixins = Vue.mixin({ methods: { $_count(arr, way) { // arr代表要进行计算的数值组成的数组 如[1,2,3]; // way 代表要进行的运算,如times、plus let result = 0; arr = arr.map(item=>Number(item)); // 取出第一项作为初始值,依次与后面各项进行运算 result = arr.splice(0, 1)[0]; arr.forEach(item=>{ // 此时的arr已经因为splice方法而失去了第一项 result = (new BigNumber(result))[way](item); }) return result; } } }) export default mixins; // 第三步 在业务代码中使用 alert(this.$_count([0.1, 0.2], 'plus')); // '0.3' alert(this.$_count([22, 5, 10], 'minus')); // '7' alert(this.$_count([-1, 10, 88], 'times')); // '-880'
结语
在上面我们列举了bignumber.js
的两种引入方式以及常用的方法,更多的方法大家也可以在官方文档中查阅,使用方法大体一致~~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。