angular - 使用 Angular Animation 在左侧显示或隐藏 div
问题描述
我正在显示高度和宽度为 600 像素的 mat-dialog。
我在 mat-dialog 中有一个按钮。当我点击按钮时,我想从 mat-dialog 的左侧显示左侧滑动 div 而不会影响 mat-dialog。
我怎样才能做到这一点?
解决方案
您可以通过两种方式做到这一点。
使用角度动画
Stackblitz:https ://stackblitz.com/edit/angular-azjfgh
Angular 提供了一组方法来做一些很酷的事情。在这个例子中,我写道:
animations: [
trigger('widthGrow', [
state('closed', style({
width: 0,
})),
state('open', style({
width: 400
})),
transition('* => *', animate(150))
]),
]
trigger -> 我们要在 html 中注册和使用的触发器的名称
state -> 我们将用于更改 div 的两个状态。
style -> 我们想要根据我们的逻辑更改的 css 属性。
过渡-> 一个简单的计时器,它将动画 div 的增长。
如果您打开 stackblitz,您将看到它是如何工作的。我使用另一个 div 来触发一个名为changeState的函数来更改属性以对其进行动画处理。
仅使用 css
Stackblitz:https ://stackblitz.com/edit/angular-lpjqnd
使用transition
(来自 css 的本机),ngClass
您可以实现相同的目标。
因为它只是基本代码,所以我只是把 css 类放在这里:
.left-stuff {
height: 50px;
border: 1px solid black;
transition: all 0.2s ease-in-out;
background-color: red;
}
如果您需要更多帮助,请随时评论此答案。
推荐阅读
- amazon-web-services - 如何获取 Amazon Cognito 中的用户更新更改日志?
- reactjs - 如何清除 FullCalendar 缓存事件
- ios - 我想将 Json 值替换为 iOS 中的另一个字符串值
- android - 有 Nativescript Jalali 日历插件吗?(或者我怎样才能将波斯(Jalali)日期提供给 RadCalendar 以显示?)
- python - 如何在熊猫中过滤 groupby 对象
- javascript - 从不使用 JSON.parse 的子字符串中获取数字
- php - PHP Regex 从路径中获得第二次出现
- r - 编织 rmarkdown 文档时 MiKTeX 失败
- css - 引导响应列冲突
- python - 如何从股票交易所等网站持续获取数据并使用 python 将其发送到 azure event hub?