gpt4 book ai didi

sorting - 是否可以只对集合进行一次排序,然后尽管 react 性仍然保持该顺序不变?

转载 作者:行者123 更新时间:2023-12-03 22:05:48 24 4
gpt4 key购买 nike

我有一个评论列表。这些评论有一个名为“vote”的属性(用户可以对评论进行投票),它们最初按投票排序(降序,onRender)。

现在,当用户投票时,评论的顺序会被动更新以反射(reflect)新的投票。

是否有可能以某种方式保持初始排序顺序不变?我想避免将用户与评论混淆,当她/他在页面上时自动交换顺序。

有什么好的方法可以解决这个问题吗?我在渲染页面时可能会考虑一次性排序,或者以某种方式保存订单,然后在集合被响应式刷新时重新应用它。

最佳答案

你可以做一个non-reactive findreactive: false选项,例如:

Comments.find({},{sort: {vote: -1}, reactive: false});

如果您想在原始列表之后附加新评论,那么我将呈现两个评论列表,一个接一个。首先渲染现有评论的排序列表,然后以创建顺序响应地渲染在初始渲染时间之后创建的评论列表。第二个列表最初是空的,根本不会呈现,但最终新的评论将出现在那里,并带有他们自己的投票数。

现在,由于上面的光标是非 react 性的,我们如何在不改变顺序的情况下让投票数 react 性地更新?答:(在 Blaze 的情况下)使用响应式助手!
Template.myTemplate.helpers({
currentVote(){
return Comments.findOne(this._id).vote;
}
});

从性能 pov 来看,这实际上是非常便宜的。

关于sorting - 是否可以只对集合进行一次排序,然后尽管 react 性仍然保持该顺序不变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42071737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com