当前位置: 首页 > 知识库问答 >
问题:

javascript - React transition group实现动画时不生效问题?

程赞
2023-04-22
const [show, setShow] = useState(false);


<button onClick={() => setShow(!show)}>click</button>

<CSSTransition 
    in={show} 
    addEndListener={
        (node, doneCallBack) =>
          node.addEventListener("transitionend", doneCallBack)
      } 
    classNames="ccc"
    >
        <div className='ddd'></div>
</CSSTransition>
.ddd {
  width: 100px;
  height: 100px;
  margin-top: 100px;
  background-color: lightblue;
  transition: opacity 1s linear;
  display: none;
}
.ccc-enter {
  opacity: 0;
  display: block;
}
.ccc-enter-active,
.ccc-enter-done {
  opacity: 1;
  display: block;
}
.ccc-exit {
  opacity: 1;
  display: block;
}
.ccc-exit-active,
.ccc-exit-done {
  opacity: 0;
  display: none;
}

点击按钮的时候,div可以动画出来;再点击让div消失的时候,就一下消失了,没有动画,怎么解决?

共有1个答案

谭梓
2023-04-22

unmountOnExit

 类似资料:
  • 本文向大家介绍javascript实现时钟动画,包括了javascript实现时钟动画的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了javascript实现时钟动画的具体代码,供大家参考,具体内容如下 效果图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍JavaScript实现烟花绽放动画效果,包括了JavaScript实现烟花绽放动画效果的使用技巧和注意事项,需要的朋友参考一下       先编写一个烟花绽放的动画效果。       放烟花时,一个烟花可分为两个阶段:(1)烟花上升到空中;(2)烟花炸开成碎片,炸开的碎片慢慢消散。       为此抽象出两个对象类:Firework和Particle。其中,Firework用于表示

  • 在这里,我们将动态画面简称为动画(animation)。正如动画片的原理一样,动画的本质是利用了人眼的视觉暂留特性,快速地变换画面,从而产生物体在运动的假象。而对于Three.js程序而言,动画的实现也是通过在每秒中多次重绘画面实现的。 为了衡量画面切换速度,引入了每秒帧数FPS(Frames Per Second)的概念,是指每秒画面重绘的次数。FPS越大,则动画效果越平滑,当FPS小于20时,

  • 本文向大家介绍原生JavaScript实现滚动条效果,包括了原生JavaScript实现滚动条效果的使用技巧和注意事项,需要的朋友参考一下 本文实例讲解原生JavaScript实现滚动条效果的相关代码,分享给大家供大家参考,具体内容如下 原理是对滑动条块进行监听,按下鼠标按键后,监听鼠标移动,然后根据滑动条块移动的百分比算出滚动区域的滚动程度,用marginLeft进行滚动,具体的写在注释里。 整

  • 本文向大家介绍IOS等待时动画效果的实现,包括了IOS等待时动画效果的实现的使用技巧和注意事项,需要的朋友参考一下 查询时间或长或短,为了提升用户体验,目前用的比较多的手段之一就是查询等待时添加一个动态等待效果。当我们在请求网络时加载页面时有个动作效果,效果图如下: 源代码可以网上找开源项目Coding.net,上面的效果原理为两张图片组合,外面那个则为动画转动,里面的图标则是透明度的变化;主要代

  • 我想写个动画。比如说鼠标向上滚动,一个div往上运动。当我鼠标向下的时候,div往下运动。 有没有这种动画库?我以前的做法是判断滚动方向。然后分别执行不同的动画函数。当然了我的一个动画里面,肯定是包含好几个运动元素的。