当前位置: 首页 > 知识库问答 >
问题:

计算百分比差异live websocket

段干玺
2023-03-14

我连接到一个websocket流,它提供给我+100个加密货币的实时价格(我大约每2秒获得一个新价格)。我想知道,如何计算每个密码价格之间的百分比差异在5分钟的周期,然后更新它每新的一分钟?我正在使用带有本机Websocket连接(不是socket.io)的React。

我想我必须每分钟“节省”(以某种方式)每个密码价格,但我如何才能做到这一点?

出于测试目的,为了查看是否可以每10秒更新一个加密价格,我尝试在套接字连接的.onMessage()中使用setInterval()

let interval;
connection.onmessage = evt => {
    interval = setInterval(() => {
        setPrice(crypto.BTCUSDT.price); // price variable is used to display the price of the crypto
        clearInterval(interval);
        console.log('----- Interval test -----')
    }, 10000);
};

这是不起作用的,当setInterval()中第一次调用setPrice()时,就像忽略了setInterval()一样,价格仍然每2秒更新一次。与console.log()相同,它每2秒而不是每10秒显示一次。

如有任何帮助,将不胜感激。谢谢

共有1个答案

贡烨烁
2023-03-14

我可能错了,因为我不知道其余的代码,但是如果您的setinterval不在useeffect内,那么在每次呈现时都会创建一个新的间隔。并且每次调用setprice时都会重新呈现该组件。将事件侦听器放入useeffect中,看看这是否可以修复它。

 类似资料:
  • 我试图计算数字的百分比(取自一个文本字段),并将计算值设置为另一个表单字段。为此,我尝试了下面的代码,但我发现js正在检测的键事件/小数位数不匹配。 例如,如果我在第一个输入字段中提供100(以计算1.75的百分比),根据我的js代码,我预计是1.75,但在第二个文本字段中是0.175。我知道这是一个非常简单的计算,但我无法解决这个问题。

  • 我有一些本地json文件。例如: JSON 1 JSON 1修改 我必须比较这些Json文件(在这个示例中,姓名字段、姓氏字段、年龄字段和文本字段被修改),我必须计算它们之间的差异百分比(绘制饼图或任何其他图形)。有办法做到这一点吗?

  • 问题内容: 我有4个项目MySQL数据库:(数值),和。 在我的报告中,我需要通过“调查”中的数字来计算已参加调查的“雇员”的百分比。 这是我现在的声明: 表格如下: 我想按参加调查的人数来计算谁所占的百分比。即,如以上数据所示,分别为0%和95%。 问题答案: 尝试这个 在这里演示

  • 我有一个包含4个项的MySQL数据库:(数值)、、和。 在我的中,我需要根据“surveys”中的数字来计算接受调查的“employees”的百分比。 这就是我现在的说法: 下面是表格的原样: 我想根据中的数字计算参加调查的的百分比。即,如上面的数据所示,将为0%,将为95%。

  • SWIG文档对这两个指令解释如下: > :“SWIG提供了另一个带有指令的文件包含指令。的目的是从另一个SWIG接口文件或头文件收集某些信息,而不实际生成任何包装代码。此类信息通常包括类型声明(例如,typedef)以及可能用作接口中类声明基类的C类。" 我的问题是这两个指令之间有什么区别,使用它们的利弊是什么? 顺便说一下,我只是想了解一些背景信息。我有一个简单的C-python扩展,当我使用上

  • 这5个国家在所有奥运会上获得的奖牌中,每个国家获得的奖牌比例是多少?