首页 > 解决方案 > 如何阅读 Jade Pug 中的对象?

问题描述

我有这个 JSON,我从 router.get 发送到 PUG 页面,名称为prices

[{"space2":{"actualPrice":"$ 99.990","oldPrice":"$ 129.990","id":11098071}},{"h20":{"actualPrice":"$ 69.990","oldPrice ":"$ 79.990","id":4444311}},{"space":{"actualPrice":"$ 79.990","oldPrice":"$ 99.990","id":4436762}}]

在我想展示actualPrice的哈巴狗页面中,space2但我不知道如何。

我尝试prices.space2.actualPrice了 for 循环,但什么也没有

标签: javascriptarraysjsonpugjade4j

解决方案


您的问题看起来像 Javascript 问题,而不是 Pug 问题。以下:

-
  const Data = [
    {"space2":{"actualPrice":"$ 99.990","oldPrice":"$ 129.990","id":11098071}},
    {"h20":{"actualPrice":"$ 69.990","oldPrice":"$ 79.990","id":4444311}},
    {"space":{"actualPrice":"$ 79.990","oldPrice":"$ 99.990","id":4436762}}
  ]

p Only space2: 
  each d in Data 
    if d.space2 
      | #{d.space2.actualPrice}

将输出:

仅空间 2:99.9990 美元


您确定要以这种方式构造数据对象吗?只有知道每个元素的第一个属性键,才能访问数组中每个元素的详细信息。例如,列出actualPrice数组中的每个项目将非常困难。

根据您的情况,如果您的数据按以下方式组织可能会更有用:

const Data = [
  {"name": "space2", "actualPrice":"$ 99.990","oldPrice":"$ 129.990","id":11098071},
  {"name": "h20", "actualPrice":"$ 69.990","oldPrice":"$ 79.990","id":4444311},
  {"name": "space", "actualPrice":"$ 79.990","oldPrice":"$ 99.990","id":4436762}
]

推荐阅读