从Node.js上的mysql结果JSON获取一个Array值

时间:2016-04-13 18:00:39

标签: javascript mysql json node.js

我有一个mysql列包含Array。当打印包含console.log(collection[0])中列的行时,结果为:

    RowDataPacket {
  id: 6,
  title: 'fsd',
  createddate: '2016-04-14 00:16:29',
  tag: 'fsdsd',
  img1: '[\'12071331_184535658548108_1612982316_n.jpg\', \'12071715_826061364175214_103377995_n.jpg\', \'12076929_10207206326744146_1386812779_n.jpg\']',
  img1big: '[\'small_12071331_184535658548108_1612982316_n.jpg\', \'small_12071715_826061364175214_103377995_n.jpg\', \'small_12076929_10207206326744146_1386812779_n.jpg\']' }

我希望打印值12071331_184535658548108_1612982316_n.jpg进行查看。我使用了这样的方法:

{% for i in collection %}     
 {{i.img1[0]}}
{% endfor %}

但视图只显示字符串的第一个字符:

[

{{i.img1}}的结果是:

['12071331_184535658548108_1612982316_n.jpg', '12071715_826061364175214_103377995_n.jpg', '12076929_10207206326744146_1386812779_n.jpg']

问题是,如何在视图上打印12071331_184535658548108_1612982316_n.jpg? P / s:对于控制器和视图中的某些情况,我尝试同时使用 JSON.parse() JSON.stringify(),但没有用处。 感谢

2 个答案:

答案 0 :(得分:1)

collection [0]的值似乎是一个字符串。在代码中的某处,您需要将字符串解析为对象(JSON.parse(string))。

答案 1 :(得分:0)

如果要在视图上显示图像,您需要的不是图像名称,而是图像路径。

例如,如果将所有图像存储在public / images文件夹下。您可以使用<img src="/images/{{i.img1}}"/>显示照片。