【问题标题】:Cannot get value form JSON object in a sveltekit loop无法从 sveltekit 循环中的 JSON 对象获取值
【发布时间】:2021-10-26 16:01:19
【问题描述】:

我正在使用 SvelteKit 来拉取一个 Prismic 对象。如果我查询单个文档,我可以很好地呈现数据。但是,如果我查询所有内容并尝试在循环中逐项列出,则无法从对象中提取文本值。

把对象串起来,就可以看到我想要的数据了:

<pre>{ JSON.stringify(results, null, 2) }</pre> 

允许我查看数据

[
  {
    "type": "accounts",
    "data": {
      "created_at": "2021-08-25T05:00:00+0000",
      "name": [
        {
          "type": "heading2",
          "text": "John",
          "spans": []
        }
      ],
      "last_name": [
        {
          "type": "heading2",
          "text": "Doe",
          "spans": []
        }
      ],
    }
  },
  {
    "type": "accounts",
    "data": {
      "created_at": "2021-08-25T05:00:00+0000",
      "name": [
        {
          "type": "heading2",
          "text": "Jane",
          "spans": []
        }
      ],
      "last_name": [
        {
          "type": "heading2",
          "text": "Rey",
          "spans": []
        }
      ],
    }
  },
]

我正在尝试从循环中获取 last_name,即 Doe 和 Rey

{#each results as account}   
  <li>{ account.data.last_name }</li>    
{/each}

发回一个对象。和

{#each results as account}
  <li>{ account.data.last_name.text }</li>
{/each}

抛出一个未定义的错误。我知道它与括号中的名称和姓氏有关。我只是不知道如何在循环中提取它们。

我试过了:

account.data.last_name[0]
account.data.last_name["text]
account.data.last_name[0].text

还有 20 次以上的迭代。我觉得我在这里遗漏了一些非常明显的东西。

【问题讨论】:

    标签: arrays json object prismic.io sveltekit


    【解决方案1】:

    【讨论】:

    • 在那个论坛上添加了我的回复。如果我们得到答案,我会更新 SO,以便遇到相同问题的任何人都知道解决方案。
    • Sam 在 Prismic 社区正确回答了这个问题:community.prismic.io/t/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-14
    • 1970-01-01
    • 1970-01-01
    • 2015-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多