请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师请问当我的数据是一个数组的之后为什么获取不到user值

在axios 调用后 console.log 发现数据是存在的,可是在render 中无法获取

https://img1.sycdn.imooc.com//szimg/5a18fee1000165b616041098.jpg

https://img1.sycdn.imooc.com//szimg/5a18fd2c0001fbf706470262.jpg

https://img1.sycdn.imooc.com//szimg/5a18fd4b0001c5b205110307.jpg


正在回答

1回答

hi,你好,因为你的 ajax 没返回的时候,data 是空数组,data[1]是不存在的,所以获取 data[1].user会报错,你可以先对 data 做一个长度判断,比如 render 加一行,

if (!this.state.data.lengh){
    return null
}

1 回复 有任何疑惑可以回复我~
  • 谢谢老师~
    回复 有任何疑惑可以回复我~ 2017-11-27 14:57:57
  • Oops___ #2
    那请问老师,您写的时候没加那个判断,为什么没有报错呢?
    回复 有任何疑惑可以回复我~ 2018-01-03 11:50:52
  • 因为老师只是一个对象,不是数组
    回复 有任何疑惑可以回复我~ 2018-01-29 17:23:41
问题已解决,确定采纳
还有疑问,暂不采纳
Redux+React Router+Node.js全栈开发
  • 参与学习       1822    人
  • 解答问题       750    个

全网唯一的React 16+Redux+React Router4实战课程,学到手是你的真本领!

了解课程
意见反馈 帮助中心 APP下载
官方微信