无法访问React中Web服务返回的对象值

时间:2019-03-21 20:23:10

标签: javascript json reactjs

以下是在点击该服务时返回的响应:

 {
   "2019-04-20":{
      "fare":0,
      "IsPricePos":false
   },
   "2019-04-19":{
      "fare":0,
      "IsPricePos":false
   },
   "2019-03-27":{
      "fare":45,
      "IsPricePos":true
   },
   "2019-03-26":{
      "fare":9,
      "IsPricePos":true
   },
   "2019-03-25":{
      "fare":23,
      "IsPricePos":true
   }
}

使用以下代码来访问Web服务并获得响应:

  fetch("/somepath/somefurtherpath/" + src + "/" + dst)
              .then(response => response.json())
              .then(result => Object.assign(newObj, result)); 

我正在使用如图所示的访存API。

1)JSON.stringify(newObj)返回{},即空对象字符串。 2)无法执行JSON.parse(newObj),因为它说它已经是一个对象。 3)Object.keys(newObj)返回一个空列表。

console.log(newObj)如下(打开控制台中打印的对象):

{}
    2019-03-21: 
        IsPricePos: true
        fare: 45
        __proto__: Object
    2019-03-22: {fare: 45, IsPricePos: true}
    2019-03-23: {fare: 45, IsPricePos: true}
    2019-03-24: {fare: 23, IsPricePos: true}

我需要访问JSON中的数据并对其进行操作。例如键及其值。 我需要访问任何给定日期的车费或IsPricePos值作为键。

我尝试以newObj."2019-03-25".fare的形式访问值,但是也无法正常工作。

做到这一点的最佳方法是什么? React在这种情况下是否有任何具体问题?

我尝试对对象进行硬编码并使用JavaScript访问值,效果很好。但这是一个问题。

请帮助。谢谢。

0 个答案:

没有答案