添加行时如何为 Angular ui-grid 设置动画

2023-12-25

我有一个 Angular UI 网格元素。我定期在数据数组的前面添加新项目。我一次只添加一些(例如 1 到 5 个新项目)

我希望 UI 网格能够为添加的新行添加动画效果。现在,行会立即添加,这使得它变得紧张。我想要将新行添加到动画中,以便 UI 网格看起来可以顺利地将它们添加到其中。

这容易实现吗?有这个选择吗?


这是一个有点困难的问题,因为 UI-Grid 虚拟化了数据,因此没有实际的 DOM 元素被添加和删除,或者隐藏和显示。这意味着您不能使用常规的 Angular 动画指令。

相反,您可以使用 $animate 服务手动触发用户交互的动画,例如添加和删除行。这会“伪造”转换,使 DOM 看起来像是已更改,但实际上并未更改。

假设您想淡入新行。您需要在传入的行数据上有一些标识符,并有选择地应用和删除基于该标识符的类。你会设置opacity: 0立即,然后使用$animate.removeClass()过渡到opacity: 1。 CSS 可能如下所示:

.new-row {
  opacity: 0;
}

.new-row-remove {
  -webkit-transition: 1s linear all;
  -moz-transition: 1s linear all;
  -o-transition:1s linear all;
  transition: 1s linear all;
  opacity: 0;
}

.new-row-remove-active {
  opacity: 1;
}

要删除行,您需要反转操作:添加一个delete-row将从完全不透明度过渡到 0 的类,then使用承诺处理程序实际删除该行一次$animate.addClass()已经完成了。这是 CSS:

.delete-row-add {
  -webkit-transition: 0.5s linear all;
  -moz-transition: 0.5s linear all;
  -o-transition: 0.5s linear all;
  transition: 0.5s linear all;
  opacity: 1;
}

.delete-row-add-active {
  opacity: 0;
}

这就是简短的答案。对于更长的解释和演示,我在这里提供了一篇文章:http://brianhann.com/ui-grid-and-row-animations http://brianhann.com/ui-grid-and-row-animations

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

添加行时如何为 Angular ui-grid 设置动画 的相关文章

  • 使用 Bootstrap 3 在 AngularJS 中表示网格或表格的最佳方式? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在使用 AngularJS 和 Bootstrap 3 创建一个应用程序 我想显示一个包含数千行的表格 网格 AngularJS 和 Bootstrap 最好的可用控件是什么 具有排序
  • 自定义单元格模板中带有按钮的 UI-Grid - 如何取消行选择事件?

    我正在使用 ui Grid v 3 0 1 我有一个特定列的自定义单元格模板 它在每行中显示一个按钮 我附加了一个 ng click 属性 它调用 appScope 来触发某些操作 一切都很顺利 但是 单击自定义模板按钮也会导致切换相关行的
  • 如何打印 Angular UI-Grid 整个数据?

    这是我的代码
  • 具有导出选项(如数据表)的等效单个 Html 文件

    我使用 DataTables 使用静态数据创建了一个 HTML 表 带有导出选项 搜索 分页 plnkr co edit n3cbx8GrGoJtOpgbxE32 p preview 类似的示例或工作 html 可在 angular ui
  • 将 angular-ui-grid 字体复制到 .tmp/fonts

    我正在经历一个known issue with Angular UI 网格我的一些字体在生产中看起来像是韩文 我申请了某个修复通过添加以下 CSS font face font family ui grid src url fonts ui
  • Angular JS ui-grid 双击行不起作用

    我想在双击 ui grid 行时调用函数 myFunc 因为我用过
  • Angular ui-grid 外部导出按钮

    我是 Angular UI GRID 的新手 我需要为导出功能创建外部按钮 例如PDF导出 and CSV 导出相似的到这张图片 https i stack imgur com kNkQH png 你知道我该怎么做吗 我还需要一个 打印 按
  • Angular.js ui-grid 自定义日期过滤器

    我正在使用角度网格 ui grid 位于ui grid info http ui grid info 我正在尝试制作一个自定义过滤器 它将使用日期输入控件按日期过滤网格 一个用于小于 一个用于大于 我似乎可以在 columnDefs 中使用
  • 单击 ng-grid/ui-grid celltemplate 会导致选择行。

    当我将 celltemplate 用于 ahref 链接时 一旦单击链接 行就会突出显示 因为我启用了 RowSelection 但我不希望在单击链接时突出 显示该行 仅当在除链接之外的任何位置单击该行时 另外 在下面的示例图片中 如何删除
  • 如何从分页 ui 网格中获取过滤数据

    我想在启用分页功能时从用户界面网格中获取过滤后的数据 一般情况下我使用 scope gridApi core on filterChanged scope function if scope gridApi grid columns 1 f
  • AngularJS:ui网格在单元格中显示多行

    我正在尝试在一个单元格中显示多个电话号码 我想在新行中显示每个数字 我尝试了多种方法 但我无法弄清楚 有人能帮忙吗 下面是我的 plnkr 的链接 http plnkr co edit LXdiDqoOAYQoO5BW02WR p prev
  • 如何使 Angular ui 网格最初展开所有行?

    我正在使用 ui 网格来显示数据列表 并且我正在尝试最初展开所有行 我试图在 onRegisterApi 事件中执行此操作 scope GridOptions data properties columnDefs name Full Add
  • ng-grid 在 ui-grid 中的“beforeSelectionChange”相当于什么?

    In ng grid 我以前用过beforeSelectionChange通过以下方式 当用户选择一行时 将执行 ajax 调用 当 ajax 调用发生时我设置 scope doingAjaxCall true 并为了防止用户更改选择 我在
  • 外部范围不再适用于 ui-grid

    我正在将 ui grid 从 v3 0 0 RC 18 升级到 v3 0 0 rc 20 76029e7 突然 external scopes 属性停止工作 有什么替代方案吗 externalScopes在 RC 19 中被删除 您可以在此
  • 在 UI-Grid 标题中实现多列分组有更好的方法吗?

    我尝试使用以下方法在 UI Grid 的列标题级别实现多列分组 我遵循的步骤 包括 UI 网格的以下标题单元格模板以及另一个 UI 网格行 div class ui grid header custom ui grid header div
  • e2e 测试 Angular UI 网格的规范方法

    故事 最近 我们的 UI 从自定义表格切换为角度 UI 网格 http ui grid info 随着它变得稳定且功能丰富 主 Angular UI 网格页面声称具有 e2e 测试集成 但我们很难让这项工作成功 据我们了解 e2e测试集成
  • Angular ui-grid 表、客户端分页和滚动

    我正在尝试将一个小项目从 jquery 移植到 angularjs 我使用 DataTables 绘制从虚拟机接收到的诊断数据 这是一个示例 DataTables 可以轻松地对数据进行分页 这样做的好处是在导航时不捕获鼠标滚动 这是当页面包
  • 如何访问 Angular-ui-grid cellFilter 中的整行数据

    我想执行 cellFilter 以编程方式定义单元格中需要显示的内容 定义列定义时 您需要指定单元格对应的字段 但是我需要访问 cellFilter 中的整行数据 而不仅仅是单个字段 是否可以将多个字段或整行传递给过滤器 name To f
  • 角度 ui-grid 自定义标题 html

    我正在尝试将 glyphicon glyphicon thlist 我可以单击并调用控制器函数 添加到默认标题的左侧 我采用了默认标头并尝试操纵它来执行此操作 默认标头位于 https raw githubusercontent com a
  • UI-GRID - 动态行高 - 替代方案

    我试图让一个单元格动态地扩展它的高度 有没有办法在渲染后调整行 GridRow 的高度 如果没有 那么我将尝试在网格中使用可扩展的网格或树 是否可以在特定单元格 列之外显示可扩展网格 目前 我看到所有可扩展网格 树网格占据了父级下方的整行

随机推荐

  • 在 3D 地形上,给定 3D 线,找到线与地形之间的交点

    我有一个 3D 地形网格 其中每个坐标 x y z 每个网格的值都是已知的 现在 我有一条单调增加 减少的线 它的起点也是已知的 我想找到地形和线的交汇点 做到这一点的算法是什么 我能想到的是将 3D 地形的坐标存储在nxn矩阵 然后我会根
  • 如何在枚举中调用附加方法?

    enum Enum1 BIG 8 HUGE 10 public String getName return Huge public String getContry return India additional Method OVERWH
  • Azure Active Directory 登录应用程序始终创建企业应用程序,无法设置replyUrls

    过去 有单独的网站和 Azure 经典门户用于管理登录应用程序 在经典门户中 您可以编辑 ReplyUrls 在新门户中 无论您如何创建应用程序 企业或应用程序注册 您都无法从 UI 编辑您的 ReplyUrls 使用应用程序 您可以第一次
  • 如何找出哪个 Rust 依赖项添加了动态链接库

    我有一个相当大的项目 有很多依赖项 我希望生成的二进制文件使用尽可能少的动态链接库 我刚刚检查了生成的二进制文件并看到 ldd target debug foo libssl so 1 1 gt lib x86 64 linux gnu l
  • 使用python解析JSON以根据条件获取值

    我是 python 新手 尝试解析 json 文件并根据条件获取所需字段 例如 如果 status true 则 打印姓名 json文件 id 12345 name London active true status true versio
  • 检查蓝牙状态 - Swift 4

    我在 Xcode 中遇到蓝牙问题 我找不到关于如何检查蓝牙是否打开的好解决方案 我想要的就是这个 我在网上搜索了一些解决方案 但没有任何对我有用 关于如何检查蓝牙有什么想法吗 我导入了 CoreBluetooth 类并编写了这行代码 if
  • 如何从 Swift 中的字符串中删除引号?

    我正在尝试删除 Swift 中的引号String就像是 Hello 这样斯威夫特String只是 Hello 你可以简单地使用 Swift 1 var str String Hello print str Hello print str s
  • 角度4-在一个打开的选项卡中注销时在所有选项卡中自动注销

    我想在一个打开的选项卡中注销时自动从所有打开的选项卡中注销 我在登录时将 jwt 令牌设置为 localStorage 并在注销时删除该令牌 如何使用存储事件从所有打开的选项卡中注销 您可以在存储上添加事件侦听器 如下所示 window a
  • 如何在java中生成XML(以字符串表示形式)

    我定义了一个java类 但只需要将该类的一些字段输出到XML中 返回的类型必须是 String 我首先选择了使用 StringBuffer 的最简单方法 但是 当我尝试处理输出字符串表示时 它失败了 我认为这很可能是因为输入中有些字符没有以
  • 在C中循环中重新声明数组

    当循环重复时 在循环中声明的数组不会设置为零吗 我有一个数组并以这种方式使用它 while i
  • C++0x 草案中的一点:n3290

    N3290 ISO 标准草案 3 4 1 12 中的一点 在查找中使用的名称期间常量表达式 of an 枚举数定义 之前声明的枚举器枚举的可见 并隐藏在包含该枚举的块 类或命名空间范围中声明的实体的名称枚举说明符 这是添加的新点 任何人都可
  • HTML5 视频:检测时间线的拖动

    我想知道是否有一种完全可靠的方法可以知道用户何时拖动 HTML5 视频的时间线 到目前为止 我一直绑定到 timeUpdate 但尚不清楚 currentTime 是否由于拖动而增加 或者只是由于视频播放而增加 谢谢 我知道MediaEle
  • H2数据库从1.4.200升级到2.0.204后集成测试出现问题

    最近我升级了H2数据库在我们的SpringBoot 2 5 8来自版本的项目1 4 200 to 2 0 204 它仅用于测试目的 对于生产 我们使用PostgreSQL 12 9 好像升级后有些词变成了关键词H2数据库例如 day val
  • 查询生成器/DQL 不适用于 INNER JOIN - 语法问题

    我知道我这里有语法问题 但我无法弄清楚 我正在尝试对 5 个表进行 SELECT 和 INNER JOIN 但 Symfony 抱怨 JOIN 中的实体在定义之前就被使用了 实际错误如下 Semantical Error line 0 co
  • symfony2 学说 expr 子查询:错误:参数号无效

    试图获得用户喜欢的状态 public function getLikedStatuses User user qb this gt em gt createQueryBuilder qb gt select s id gt from Wal
  • 匹配列表中至少两个单词的正则表达式

    我有一个单词列表 foo bar baz 我想编写一个正则表达式来匹配至少包含其中两个的字符串 例如 foo baz 应该匹配同时 ba foo z 不应该 显而易见的解决方案 foo bar baz foo bar baz 有效 但我觉得
  • JCL 错误 - “$HASP165 IBMUSERW ENDED AT SVSCJES2 - JCL ERROR CN(INTERNAL)”

    我正在尝试使用实用程序 DFHWS2LS 创建 CICS Web 服务请求程序 IBM 红皮书或指南中提到的第一步是在 JCL 中运行它 我在提交 JCL 时遇到了这个问题 我做错事了 无法弄清楚什么 任何有关此问题的帮助将不胜感激 IBM
  • 让 onClick 事件每次点击时执行不同的操作?

    我的表格中有 3 列 每列顶部都有一些文本 下面有一个图像 我拥有这样的功能 当有人单击 3 列之一中的图像时 它会放大该列 并使用 onClick 事件删除其他列 但是 我希望当我第二次单击图像时 它会带回其他列 我遇到的问题是弄清楚如何
  • 一对多 SVM 中的 10 倍交叉验证(使用 LibSVM)

    我想在我的系统中进行 10 倍交叉验证一对一 支持向量机 http en wikipedia org wiki Support vector machineMATLAB 中的分类 我试图以某种方式混合这两个相关的答案 libsvm 中的多类
  • 添加行时如何为 Angular ui-grid 设置动画

    我有一个 Angular UI 网格元素 我定期在数据数组的前面添加新项目 我一次只添加一些 例如 1 到 5 个新项目 我希望 UI 网格能够为添加的新行添加动画效果 现在 行会立即添加 这使得它变得紧张 我想要将新行添加到动画中 以便