Reactjs 获取react钩子上的上一个状态,而不是类上的状态

Reactjs 获取react钩子上的上一个状态,而不是类上的状态,reactjs,state,Reactjs,State,如何在react钩子中获取previoius状态值? 这是我的密码。我也使用了userefhook,但不起作用 const [ category, setCategory] = useState([]); function updateMarkers(data) { let newCategory= []; let {name, age} = data.payload; //Here need to check previous cateogory has same age or

如何在react钩子中获取previoius状态值? 这是我的密码。我也使用了userefhook,但不起作用

const [ category, setCategory] = useState([]);
 function updateMarkers(data) { 
 let newCategory= []; 
 let {name, age} = data.payload; 
 //Here need to check previous cateogory has same age or not.
 category && category.map((cate, i) => { 
   if (cate.age!== age) { 
     newCategory[i] = data.payload 
   } 
 }) 
}
setCategory((prevCategory)=>[…prevCategory,…newCategory])

让prevCategory=usePrevious(类别);
console.log('prevcategory',prevcategory)

您可以像这样创建
usePrevious

export default function usePrevious(value) {
  const ref = useRef();
  useEffect(() => {
    ref.current = value;
  });
  return ref.current;
}
并使用:

const previousState = usePrevious(state)

您可以通过以下操作访问以前的状态

setState(prevState => prevState)

我也这样做了,但没有工作,您能显示您正在使用的代码吗?const[category,setCategory]=useState([]);函数updateMarkers(data){let newCategory=[];let{name,age}=data.payload;category&&category.map((cate,i)=>{if(cate.age!==age){newCategory[i]=data.payload}}}setCategory((prevCategory)=>[…prevCategory,…newCategory])在这里,我需要用新的类别值检查以前的类别值。请更新您的代码和您的问题,以便我可以轻松阅读和理解您的问题