TypeError:尝试从对象数组访问数据时无法读取未定义的属性“ title”

时间:2020-09-26 08:49:47

标签: javascript reactjs mongodb axios use-state

我正在尝试使用axios从mongodb获取响应中的数据,在应用GET方法时收到一个对象数组,但是我无法正确存储状态中的数据,也无法以所需形式使用状态中的数据,我想在此处获取特定ker的值,即标题。请帮助我解决此问题或提出更好的方法。

 [state, setState] = useState()
 useEffect( async () =>
 {
  axios({
   "method": "GET",
    "url": "http://localhost:5500/api/add/",
   "headers": {
     "Content-Type": "application/json",
   }
 })
 .then((response) => {
   setState(response.data)
 })
 .catch((error) => {
   console.log(error)
 })

const title = state[1].title
 
console.log(title)
    }, state)

数据作为具有key:value对的对象数组存储在mongodb中,当我使用input - console.log(response.data[1].title)

时收到以下输出
output- title-2

对于数据对象:

1:{_ id:“ 5f6e10d3509b062528381884”,标题:“ title-2”,详细信息: “ details-2”,__v:0}

此后,当我使用console.log(state[1].title)时收到了

TypeError:尝试读取未定义的属性'title' 从对象数组访问数据

1 个答案:

答案 0 :(得分:0)

我认为您在axios返回数据并将其保存到状态之前要求 state[1].title。 如果是,则表示您stateunderfined