Ken428965 2022-10-20 19:58 采纳率: 53.4%
浏览 46
已结题

react,使用hook,如何将已获取到热门城市名称显示出来?

已写的部分代码:

const [cityListHot,setCityListHot] = useState('')
useEffect(()=>{
// 获取热门城市列表
  let cityListHot = {
    title: "热",
    items: [],
    key: "hot"
  }
  axios.get(`http://localhost:8080/area/hot`).then(hotRes=>{
    cityListHot.items = setCityListHot(hotRes.data.body)
    console.log(cityListHot.items)
  })
}

目前效果如下,界面左边热门城市项下没有显示出城市名称:

img

chrome浏览器打印显示undifined,数据库里的数据没有被放进items里,且没有显示出来
请问正确的代码是什么?

  • 写回答

1条回答 默认 最新

  • 一把编程的菜刀 2022-10-21 12:48
    关注

    应该是你异步加载顺序的问题吧
    也就是说数据还没获取到之前,你就已经触发使用了cityListHot 这个,而你cityListHot 初始定义里,items并没有值,所以打印肯定会undifined

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月21日
  • 已采纳回答 10月21日
  • 修改了问题 10月21日
  • 修改了问题 10月21日
  • 展开全部