1. css原生动画的使用

import React, { useState } from "react"
import "./index.css" function App() {
const [show, setShow] = useState(true)
const toogle = () => {
setShow(!show)
}
return (
<div>
<div className={show ? "show" : "hide"}>hello,world</div>
<button className="btn" onClick={toogle}>
toogle
</button>
</div>
)
} export default App

样式

.show {
opacity:;
transition: all 1s;
} .hide {
opacity:;
transition: all 1s;
}

2.使用keyframes动画

.show {
animation: show-item 1s ease-in forwards; // forwards 表示保存动画最后一帧的状态
} .hide {
animation: hide-item 1s ease-in forwards;
} @keyframes show-item {
0% {
opacity:;
}
50% {
opacity: 0.5;
color: pink;
}
100% {
opacity:;
color: green;
}
}
@keyframes hide-item {
0% {
opacity:;
}
50% {
opacity: 0.5;
}
100% {
opacity:;
}
}

3.使用 react-transition-group实现动画

.fade-enter {
opacity:;
} .fade-enter-active { // 在最后一帧时会被清除
opacity:;
transition: all 1s ease-in;
}
.fade-enter-done { // 这是必须的 保证最后一帧动画的状态
opacity:;
} .fade-exit {
opacity:;
} .fade-exit-active {
opacity:;
transition: all 1s ease-in;
}
.fade-exit-done {
opacity:;
}
<CSSTransition in={show} classNames="fade" timeout={10000} unmountOnExit>  unmountOnExit 表示隐藏的时候卸载该组件
<div>hello,world</div>
</CSSTransition>

刷新页面没有动画  需要加上 appear={true}

Transition / CSSTransition / TransitionGroup

Transition 相比较于 CSSTransition更加底层

4.列表动画

<TransitionGroup>
{
this.state.list.map((item,index)=>{
return (<CSSTransition key={index}
appear = {true}
timeout = {1000}
unmountOnExit
classNames='fade'
onEntered={(el)=>{el.style.color='blue'}}>
<div>{item}</div>
</CSSTransition>);
})
}
</TransitionGroup>
<button onClick={ this.handlerClick }>toogle</button>

react中使用动画的更多相关文章

  1. react中如何使用动画效果

    在react中想要加入动画效果 需要引入 import {CSSTransitionGroup} from 'react-transition-group' //加入react 动画包 import ...

  2. Immutable 详解及 React 中实践

    本文转自:https://github.com/camsong/blog/issues/3 Shared mutable state is the root of all evil(共享的可变状态是万 ...

  3. React中使用CSSTransitionGroup插件实现轮播图

    动画效果,是一个页面上必不可少的功能,学习一个新的东西,当然就要学习,如何用新的东西,用它的方法去实现以前的东西啦.今天呢,我就在这里介绍一个试用react-addons-css-transition ...

  4. react中input自动聚焦问题

    input自动聚焦问题 在react中可以使用refs解决这个问题,首先看一下refs的使用场景: (1)处理焦点.文本选择或媒体控制. (2)触发强制动画. (3)集成第三方 DOM 库. 使用re ...

  5. 简谈react中的虚拟DOM

    相信你在看到此篇前也翻阅大量的对DOM的文章讲解和介绍 react中的虚拟DOM 此篇我尽量说人话(大白话),不然想必你在看到别的大神的文章早就懂了. 不说废话了,上干货. 1.首先简单对Html中的 ...

  6. 【React】377- 实现 React 中的状态自动保存

    点击上方"前端自习课"关注,学习起来~ 作者:陈俊宇 https://github.com/CJY0208 什么是状态保存? 假设有下述场景: 移动端中,用户访问了一个列表页,上拉 ...

  7. Three.js 快速上手以及在 React 中运用[转]

    https://juejin.im/post/5ca22692f265da30a53d6656 github 的地址 欢迎 star! 之前项目中用到了 3D 模型演示的问题,整理了一下之前学习总结以 ...

  8. React中的合成事件

    React中的合成事件 React自己实现了一套高效的事件注册.存储.分发和重用逻辑,在DOM事件体系基础上做了很大改进,减少了内存消耗,简化了事件逻辑,并最大程度地解决了IE等浏览器的不兼容问题. ...

  9. React Transition css动画案例解析

    实现React Transition Css动画效果 首先在项目工程中引入react-transition-group: npm install react-transition-group --sa ...

随机推荐

  1. python将图片旋转,颠倒,修改尺寸

    直接上代码,根据需求注释选择相应修改 from PIL import Image import os import os.path rootdir = r'G:\jianfeng\project\ru ...

  2. WPf 带滚动条WrapPanel 自动换行 和控件右键菜单

    原文:WPf 带滚动条WrapPanel 自动换行 和控件右键菜单 技能点包括 WPf 样式的引用 数据的验证和绑定 比较适合初学者 前台: <Window.Resources> < ...

  3. 微服务SpringCloud项目架构搭建入门

    Spring的微服务框架SpringCloud受到众多公司欢迎,给大家带来一篇框架搭建入门.本次采用的版本是Spring Cloud版本为Finchley.RELEASE. 一.SpringCloud ...

  4. EJB组件开发实记(1)

    安装JBoss或者Wildfly jdk1.4以上. Eclipes安装插件 JBoss Tools: eclipes Jee photon 在eclipes 内部点击 >>Windows ...

  5. 百度API车牌识别——Restful方式

    源码下载地址:https://download.csdn.net/download/redhat588/11798294 Delphi xe 10.3.2 for windows 7 环境编译通过! ...

  6. attention 汇总(持续)

    Seq2seq Attention Normal Attention 1.  在decoder端,encoder state要进行一个线性变换,得到r1,可以用全连接,可以用conv,取决于自己,这里 ...

  7. rxJava2.x源码解析

    一. Rxjava是什么 Rxjava在GitHub的介绍是 "A library for composing asynchronous and event-based programs u ...

  8. cl_demo_output=>display 介绍

    Methods of CL_DEMO_OUTPUT PS:自己测试是display后的内表不能带表头. 类CL_DEMO_OUTPUT 在示例程序中创造了很多简单的数据输出的方法而不需要经典的list ...

  9. Web前端基础(7):JavaScript(一)

    1. JavaScript概述 1.1 JavaScript历史背景介绍 布兰登 • 艾奇(Brendan Eich,1961年-),1995年在网景公司,发明的JavaScript. 一开始Java ...

  10. java基础(20):Map、可变参数、Collections

    1. Map接口 1.1 Map接口概述 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图. Collection中的集合,元素是孤 ...