如何通过fetch api添加最新行

时间:2018-05-24 22:41:22

标签: javascript json fetch

我试图通过fetch来显示最新添加的记录。在用户向我要提取的api提交信息并在下一页显示为收据之前的页面上。

所以我的想法是最简单的方法是获取添加的最新行并显示该信息。我怎么能实现这个目标,还是我应该采取另一种方式。

因此,例如在这种情况下,我想定位最新的一行,即report_id:3。report_id是唯一的自动递增值。

JAVASCRIPT:

const fakeUserId = 1;


    function fetchReport() {

      return fetch('http://localhost:8888/api/problems')
      .then(response => response.json())
      .then(data => {

        console.log(data.data);


      })
    }

    fetchReport();

LOG OUTPUT

 "data": [
    {
    "report_id": 1,
    "user_id": 1,
    "name": "Name1",
    "phone": "123"
    },
    {
    "report_id": 2,
    "user_id": 2,
    "name": "Name2",
    "phone": "1234"
    },
    {
    "report_id": 3,
    "user_id": 3,
    "name": "Name3",
    "phone": "12345"
    }
    ], 

2 个答案:

答案 0 :(得分:1)

您正在寻找Array.pop()

(只要您不介意修改原始data.data .Pop将删除它)



var data = {
  "data": [{
      "report_id": 1,
      "user_id": 1,
      "name": "Name1",
      "phone": "123"
    },
    {
      "report_id": 2,
      "user_id": 2,
      "name": "Name2",
      "phone": "1234"
    },
    {
      "report_id": 3,
      "user_id": 3,
      "name": "Name3",
      "phone": "12345"
    }
  ]
}

var lastItem = data.data.pop()

console.log(lastItem)




答案 1 :(得分:0)

您的"数据"在恰当命名的data.data中,这是一个数组。访问数组中最后一项的一种方法是通过data.data[data.data.length-1]

访问它