在新数据到达 Meteor 时对其进行动画处理
Animating new data as it arrives in Meteor
我是 meteor 和 mini 的新手mongo 所以我有点不知道该怎么做,我已经进行了研究但找不到太多因为我正在使用 angular+流星而不是火焰。
我的服务器上有一个在我的客户端上订阅的集合 (angular)。每次将新元素添加到我的服务器集合时,客户端 synscronise 和更新 minimongo 并且工作正常。
现在我想为这个新 "event" 设置样式,例如,当新元素添加到我的 table(html 中的集合时添加动画/渐变背景色) mongo 数据(通过 ng-repeat 对助手进行迭代),但无法真正找到正确执行此操作的方法。
我发现 Cursors 它可能会起作用,但我无法弄清楚我应该如何在我的 angular 前端实现它。
有人已经尝试过或者可以为我指明研究方向吗?
谢谢
您使用 Cursor 的方向正确。您可以使用 cursor.observe(回调)。例如,您可以监听添加事件,并在添加新文档时制作动画。
你是对的 - 光标可能会起作用。尤其是 observeChanges
方法。由于您只要求为您指明方向,而我对 Anguler 不熟悉,因此我不提供全部代码,仅提供一些建议:
- 使用文档的 ID 填充您的 table 行元素,以便稍后能够访问它。 (
<tr class="..." data-id="q1w2e3r4t5">...</tr>
)
- 然后你可以在你的光标上附加一个观察者,并在新添加的元素上添加一个CSS class:
cursor.observeChanges({added: (id) => $('[data-id=${id}]').addClass('animate')})
要启用动画,请在 CSS .animate
中的某处定义您喜欢的任何动画。您可以在其他 SO 帖子中找到与此相关的帮助。可能像 f.e.
@keyframes highlight {
from {background-color: yellow;}
to {background-color: white;}
}
.animate {
animation: highlight 1s;
}
希望对你有用。
我是 meteor 和 mini 的新手mongo 所以我有点不知道该怎么做,我已经进行了研究但找不到太多因为我正在使用 angular+流星而不是火焰。
我的服务器上有一个在我的客户端上订阅的集合 (angular)。每次将新元素添加到我的服务器集合时,客户端 synscronise 和更新 minimongo 并且工作正常。
现在我想为这个新 "event" 设置样式,例如,当新元素添加到我的 table(html 中的集合时添加动画/渐变背景色) mongo 数据(通过 ng-repeat 对助手进行迭代),但无法真正找到正确执行此操作的方法。
我发现 Cursors 它可能会起作用,但我无法弄清楚我应该如何在我的 angular 前端实现它。
有人已经尝试过或者可以为我指明研究方向吗?
谢谢
您使用 Cursor 的方向正确。您可以使用 cursor.observe(回调)。例如,您可以监听添加事件,并在添加新文档时制作动画。
你是对的 - 光标可能会起作用。尤其是 observeChanges
方法。由于您只要求为您指明方向,而我对 Anguler 不熟悉,因此我不提供全部代码,仅提供一些建议:
- 使用文档的 ID 填充您的 table 行元素,以便稍后能够访问它。 (
<tr class="..." data-id="q1w2e3r4t5">...</tr>
) - 然后你可以在你的光标上附加一个观察者,并在新添加的元素上添加一个CSS class:
cursor.observeChanges({added: (id) => $('[data-id=${id}]').addClass('animate')})
要启用动画,请在 CSS
.animate
中的某处定义您喜欢的任何动画。您可以在其他 SO 帖子中找到与此相关的帮助。可能像 f.e.@keyframes highlight { from {background-color: yellow;} to {background-color: white;} } .animate { animation: highlight 1s; }
希望对你有用。