javascript - CSS 变换或缩放?安装动画
解决方案
正如已经提到的评论中的@IceMetalPunk,您必须为此使用库。例如react-transition-group
会满足您的需求。
我调整了你的沙箱:https ://codesandbox.io/s/empty-tdd-7rvs8
import React, { useState } from "react";
import ReactDOM from "react-dom";
import "antd/dist/antd.css";
import "./index.css";
import { Button, Card } from "antd";
import { Transition } from "react-transition-group";
const CardExample = () => {
const [showDiv, setShowDiv] = useState(false);
const handleClick = () => {
setShowDiv(!showDiv);
};
const cardStyle = {
transition: `all 300ms ease-in-out`,
background: "red"
};
const transitionStyles = {
entering: { height: 150 },
entered: { height: 150 },
exiting: { height: 0 },
exited: { height: 0 }
};
return (
<div>
<Button onClick={handleClick} type="primary">
Show Card
</Button>
<Card>ITEM</Card>
<Transition in={showDiv} timeout={300}>
{state => (
<Card
style={{
...cardStyle,
...transitionStyles[state]
}}
>
This is my card
</Card>
)}
</Transition>
<Card>ITEM</Card>
</div>
);
};
ReactDOM.render(
<div>
<CardExample />
</div>,
document.getElementById("container")
);
来源: https ://reactcommunity.org/react-transition-group/transition
推荐阅读
- java - 将转换后的(从布局)上传到内部存储中,而不是保存在内部存储中,将图像上传到 Firebase。换句话说,上传
作为图像。安卓工作室 - c++ - 尝试编译两个 .cpp 文件时出现 C++“未定义的引用”错误
- javascript - 在 React-Native 中显示来自 Firestore 的用户名数据
- ruby - 创建现场 ActiveRecord::Relation 替代品
- python - shelljs.exec(`sudo pkill -P ${process.pid}` 在 ubuntu 中不起作用
- python - Matplotlib - 用三角形框注释图
- python - 如何将 3D Obj 文件转换为图矩阵的邻接矩阵
- go - go get failed with "AsynkronIT / protoactor-go" undefined: balancer.PickOptions and undefined: resolver.BuildOption
- python-3.x - 将字符串 1-24 转换为日期时间格式
- javascript - 使用 HTML5 和 Javascript 录制/上传带有进度条的固定长度视频