gpt4 book ai didi

javascript - Meteor 0.8.0+,如何为长时间运行的代码提供 'busy spinner'?

转载 作者:行者123 更新时间:2023-11-28 15:38:52 24 4
gpt4 key购买 nike

我有一个长时间运行的模板助手。它依赖于三个独立的集合,并执行大量循环来为每日报告提供一些数据。用户可以接受它长时间运行,但我需要向他们提供反馈,表明客户端正忙于计算将呈现给 UI 的内容。对我来说,问题是使用 waitOn 钩子(Hook)只能让我完成一半,并且渲染的回调不起作用,除非我向模板添加新行(这几乎从不)。事实上,我想知道Meteor团队是否意识到了这一点。这似乎是一个很好的功能。我有一个行数和列数相同的表,但单元格中的值发生了变化。当计算这些单元格的 JS 运行时,如何向用户显示一些反馈?

最佳答案

Meteor 的方式是使用 react 变量:

HTML

<template name="busy">
{{#if processing}}
spinner
{{else}}
Done, showing results: ...
{{/if}}
</template>

JS

var data = new ReactiveDict();

Template.busy.rendered = function() {
data.set('processing', true);
};

Template.busy.processing = function() {
return data.get('processing');
};

var processing = function() {
...
// Looooong calculations
...
// Or even async
...
data.set('processing', false);
};

关于javascript - Meteor 0.8.0+,如何为长时间运行的代码提供 'busy spinner'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24598867/

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