关于nodejs连接MySQL返回的数据有RowDataPacket问题
使⽤nodejs连接数据库查询表后,拿到的数据是⼀个数组,数组⾥⾯是JSON格式的数据,但是每个JSON前⾯都有⼀个RowDataPacket,这就导致前端获取到这些数据后不得不进⾏⼀些格式处理,⾮常痛苦。未处理前是这个样⼦的:
1 [ RowDataPacket {
2    contractname: 'datatime',
3    contractdesc: 'sdfsd',
4    deploystatus: '0',
5    deployuser: null,
6    uploaddate: '2018-07-16 16:36:08',
7    deploydate: null,
8    isvalid: '1' },
9  RowDataPacket {
10    contractname: 'sd',
11    contractdesc: 'sdf',
12    deploystatus: '0',
浏览器json格式化13    deployuser: '',
14    uploaddate: null,
15    deploydate: null,
16    isvalid: '1' } ]
其实我们可以在拿到数据后,进⾏⼀个JSON的格式化处理,这样就能把RowDataPacket给删掉啦,具体做法也很简单
1var dataString = JSON.stringify(results);
2var data = JSON.parse(dataString);
其中results就是从数据库拿到的数据,通过这样的格式化后,我们得到最终的数据如下
1 [ { contractname: 'datatime',
2    contractdesc: 'sdfsd',
3    deploystatus: '0',
4    deployuser: null,
5    uploaddate: '2018-07-1
6 16:36:08',
6    deploydate: null,
7    isvalid: '1' },
8  { contractname: 'sd',
9    contractdesc: 'sdf',
10    deploystatus: '0',
11    deployuser: '',
12    uploaddate: null,
13    deploydate: null,
14    isvalid: '1' } ]
⼤功告成

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。