代码之家  ›  专栏  ›  技术社区  ›  Hasan Zubairi

将fetch的响应反应为json

  •  0
  • Hasan Zubairi  · 技术社区  · 2 年前

    从服务器获取json数据的fetch语句。我想获取要保存在状态中的对象的值。响应只是其中的一个元素[{“QuestId”:1700}]。如何获取QuestId的值。我的代码给出了未定义的错误。

    fetch("http://testapi/quest", {
          .then(res => res.json())
          .then(
            res => {
              setQuestId(JSON.stringify(res.QuestId))
              console.log('Test' + qid);
            },
            (error) => {
              alert("Failed" + error);
            }
          );
    
    1 回复  |  直到 2 年前
        1
  •  0
  •   Kamen Minkov    2 年前

    如果 res 值为 [{"QuestId":1700}] ,那么它就是一个数组;如果你确定你想获得第一个条目,你必须这样做 res[0].QuestId 而不是 res.QuestId 。该错误在某种程度上是指示性的-数组没有属性 QuestId .