mybatis-plus雪花算法自动生成ID到前端后精度丢失问题
问题发生
前端接收到后端的数据出现异常,异常如下:
如图这是后端正常返回的数据,
但是点击预览时发现这个id的数据被改变了
这就导致了我通过id去修改相关数据时无法成功
问题原因
id的长度过长(19位),前端js的Number类型精度为16位,所以导致数据格式化精度丢失
这个id是我用mybatis-plus的雪花算法自动生成的,后端实体类似如下:
后端实体参数使用Long类型是没有任何问题的,关键就在于Long类型到前端后在解析json时候会被解析为