Ken428965 2022-11-14 12:56 采纳率: 53.4%
浏览 62
已结题

react,获取数据问题:第一次获取不到数据,第二次才能获取到数据?

在使用的react版本如下:

img


已写的部分代码:

useEffect(() => {
    async function fetchData() {
      const { label, value } = await getCurrentCity()
      setLabel(label)
      setValue(value)
    }
    fetchData()
      
    searchHouseList()
  },[])
  
  // 用来获取房屋列表数据
  const searchHouseList = () => {

    API.get('/houses', {
      params: {
        cityId: value,
        ...filters,
        start: 1,
        end: 20
      }
    }).then(res=>{
      console.log("value值:", value)
      console.log("filters值:", filters)
    const { list, count } = res.data.body

    setList(list)
    setCount(count)
    // 数据加载完成的状态
    setIsLoading(false)
    })
  }

首次进入本模块界面时打印出的结果是空值(获取到105959套房源):

img


点击“方式“,不选择任何一项,点击“确定”后的打印结果为(获取到1946套房源):

img


故障可总结为:第一次获取不到数据,第二次才能获取到数据
请问代码出了什么问题?如何修改?烦请展示代码进行举例说明,感谢~

  • 写回答

1条回答 默认 最新

  • 明先生啊。 2022-11-14 14:29
    关注

    useEffect(() => {
    async function fetchData() {
    const { label, value } = await getCurrentCity()
    setLabel(label)
    setValue(value)
    searchHouseList(value)
    }
    fetchData()

    },[])

    // 用来获取房屋列表数据
    const searchHouseList = (value) => {

    API.get('/houses', {
      params: {
        cityId: value,
        ...filters,
        start: 1,
        end: 20
      }
    }).then(res=>{
      console.log("value值:", value)
      console.log("filters值:", filters)
    const { list, count } = res.data.body
    
    setList(list)
    setCount(count)
    // 数据加载完成的状态
    setIsLoading(false)
    })
    

    }

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月15日
  • 已采纳回答 11月15日
  • 修改了问题 11月15日
  • 创建了问题 11月14日

悬赏问题

  • ¥15 主要进行描述非满管状态下,管路的摩阻系数是怎么变化的,在管路长度方向上是怎么分布的(标签-matlab)
  • ¥15 multisim设计求解如图
  • ¥15 动态多目标优化,求解定义的问题的POF和POS公式
  • ¥30 实验 :UML2.0 行为建模
  • ¥15 设计一种优化调度算法并结合论文中的案例给出调度计划
  • ¥15 py文件打包exe报错TypeError:expected str,bytes or os.PathLike object,not_io.BytesIO
  • ¥15 Java编写学籍信息管理系统
  • ¥15 IPXE网刻客户机找不到服务端
  • ¥15 小贝360-4 配二个 华772S 设置WⅰFi5G 连接
  • ¥15 vs2022的QT报错,好像是缺少winextras