useEffect监听订阅的数组并叠加更新

遇到的问题,解决了小计一下:

我通过useNavigate和useLocation传递了一个数组,在组件中通过useEffect监听location.state,将它携带的数组B累加到原来的数组A

  const location = useLocation();
  // // 监测搜索框的书籍book是否提交到选择列表页
  useEffect(() => {
    console.log(111111)
    if(location.state===null) {return}
    if(location.state) {
      setBookList(bookList=>[...bookList,...location.state])
      console.log('我是书籍列表页过来的',location.state)
    }
    // console.log('我是设置轮播构图页:',bookList)
  },[location.state])

这里注意蟹盖bookList的写法,如果直接【...bookList,...location.state】,useEffect的第二参数会有警告。

posted @ 2022-08-22 14:34  乔十六  阅读(155)  评论(0编辑  收藏  举报