gpt4 book ai didi

datatables - 使用 meteor subscribe onReady 函数,然后观察重复数据中的结果

转载 作者:行者123 更新时间:2023-12-04 02:19:31 25 4
gpt4 key购买 nike

我使用 在客户端允许快速实时排序/过滤大约 10,000 行数据。在表创建期间向 DataTable 提供行数组比单独添加行要快得多。我可以使用 onReady function订阅以实现这一目标。如果我再调用 observe为了获取更改,我再次获取已在 subscribe 中提供的数据。

虽然我可以解决这个问题,但我想我只是没有使用 正确并感谢任何建议。

下面是一些示例代码:

Meteor.subscribe("books", function(){
// Runs when subscription is complete
var mData = Books.find().fetch();

MyTable = $('#testTable').dataTable( {
'aoColumns': [
{ sTitle: 'title', sClass: 'alignRight', mDataProp: 'title'},
],
'aaData' : mData
});
// Add any new books.
Books.find().observe({added: function(item){
// ERR: Adds the books already fetched into mData as well as any new books.
MyTable.fnAddData([item]);
}});
});

最佳答案

observe ({_suppress_initial: true}) 有一个隐藏选项可以避免这种行为。我不确定使用它是否是个好主意,但它就在那里。

关于如何构建代码的建议;它并不像它应该的那么容易,但我认为你想要像下面这样的东西:

  1. {{#constant}} 帮助程序包装您的表格,这样它就永远不会被重新呈现。

  2. 确保表格在数据准备好之前不会一次性呈现(这可能有帮助:https://github.com/oortcloud/unofficial-meteor-faq#how-do-i-know-when-my-subscription-is-ready-and-not-still-loading)

  3. 在表格的 Template.table.rendered 回调中执行上面的代码。

这种方法似乎更模块化。

关于datatables - 使用 meteor subscribe onReady 函数,然后观察重复数据中的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13055536/

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