Ken428965 2022-10-20 19:58 采纳率: 53.6%
浏览 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日
  • 展开全部

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度