哪里可以保存API的JSON响应?

时间:2019-03-19 06:46:39

标签: javascript json reactjs

我是新来的人。现在,我正在使用axios。我正在获取带有数据的JSON文件。我需要把它存放在某个地方。我应该在哪里存放它?在localStorage还是处于状态?稍后,我需要映射它并显示该数据。什么是最好,最有效的方法。现在,我将它存储在localStorage中并处于状态。比起状态映射吧

getTemplates() {
    let token = localStorage.getItem("token")
    axios
      .get("http://dev.candidates.hrmessenger.com/stage/get-template", {
        mode: "cors",
        headers: {
          "Content-Type": "application/x-www-form-urlencoded",
          Authorization: `Bearer ${token}`,
        },
      })
      .then(res => {
        localStorage.setItem("data", JSON.stringify(res.data))
        this.setState({
         data:JSON.parse(localStorage('data'))
       })

      })
      .catch(error => {
        console.log(error)
      })
  }



this.state.data.map((item, index)=>{
return (
<div key={index}>{item}</div>
)
})

2 个答案:

答案 0 :(得分:2)

您应该将数据存储在状态中,如果要再次更改状态数据,请调用setState,这是获取数据的最佳方式,即响应并将其设置在State中,因此您不必清除本地存储。本地存储不是一个好习惯

答案 1 :(得分:0)

我的建议是使用Redux和Redux-Persist。 Redux-Persist Reference