我有如下代码:
export default ({ er, setError }) => {
React.useEffect(() => {
setTimeout(() => {
setError('')
}, 2000);
}, [setError]);
return (
<AnimatePresence onExitComplete={()=>console.log('exit')}>
{ er && <motion.div style={{ position: 'absolute', bottom: '10rem', right: '0' }} key="er" exit={{ x: 100 }} animate={{ x: -15 }} initial={{ x: 100 }} transition={{ duration: .8, ease: 'backInOut' }}>
ERROR : {er}
</motion.div>}
</AnimatePresence>
);
}
有两件事没有发生
- 退出动画未显示(我相信组件已卸载并且没有时间显示动画,我正在寻找解决该问题的方法)
- 未
onExitComplete
触发。
如何解决这2个问题?