【问题标题】:React CSS Keyframes - animate when state removes component from DOMReact CSS Keyframes - 当状态从DOM中删除组件时动画
【发布时间】:2021-08-27 07:50:45
【问题描述】:

我正在努力将 CSS 关键帧与 React 一起使用。

我可以让它们在组件被挂载时工作,但是当组件被卸载时,CSS 转换在状态从 DOM 中移除之前没有机会进行动画处理。

我并不热衷于使用 JS 库来做这件事,因为我觉得应该有一种方法可以用好的旧 CSS 来做到这一点。

我有一个代码笔,我把它放在一起来展示我到目前为止所拥有的东西。 https://codesandbox.io/s/react-hooks-usestate-forked-dhvu7?file=/src/styles.css

在动画结束时,我希望卸载组件,我不希望它留在 dom 中。

提前致谢。

【问题讨论】:

  • 你应该首先添加一些类向CSS发出信号它应该触发动画,然后你就拥有了一些选项:在你的反应代码中使用setTimeout,然后实际删除元素,或者使用其他一些聪明的方法来知道动画何时完成,然后删除元素
  • 从您的代码看来,您不需要 CSS animation,而是一个简单的 transition。只需添加一个具有所需 CSS 结果的类并在元素上设置 transition 属性,因此当该类出现时,它将转换为在该类上定义的那些属性

标签: javascript css reactjs


【解决方案1】:

对于其他想要解决方案的人来说,这篇文章让我到达了我想去的地方 https://czaplinski.io/blog/super-easy-animation-with-react-hooks/

【讨论】:

    猜你喜欢
    • 2016-05-21
    • 2012-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-16
    • 1970-01-01
    • 2016-05-03
    相关资源
    最近更新 更多