订单号精度损失问题
在页面点击提交测试:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ae08d32336e7961c29cead2716e9d1d9.png)
成功生成订单!
然后看页面跳转:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/31668800e3a2fa3c3be4929da7c8ba36.png)
好像有什么不对?订单号的最后2位不正确啊!
这其实是因为JS的长整数精度有限,java的Long类型数据超出了范围,所以出现了精度损失。
我们后台返回的是Json的字符串,在axios内部会自动调用 JSON.parse()方法把json字符串转为JS数据,就会出现进度损失。如果不进行转换,依然当做字符串来使用,就不会有问题了。
因此,我们重写axios对响应的处理回调函数:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f24fb56db1a044f976e648fd790cda26.png)
{
transformResponse: [
function(data){
return data;
}
]
}
再次测试,就OK了。