javascript - 如何使用我的 React 应用绕过标签冻结?
问题描述
我有一个反应应用程序,它在 2 秒计时器上更新数据库中的数据:
componentDidMount() {
this.interval = setInterval(()=> this.getSelPos(), 2000);
}
componentWillUnmount() {
clearInterval(this.interval)
}
async getSelPos() {
const response = await axios.get("http://localhost:5000/selector", { crossdomain: true });
console.log(response.data);
this.setState({SelectorPos: parseInt(response.data.selector)});
this.setState({Pressure: parseInt(response.data.pressure)});
this.setState({Temperature: parseInt(response.data.temperature)});
这只是发送到从我的数据库中获取值并响应的节点 api。当前设置为每 2 秒轮询一次并更新页面。
我遇到的问题是,当我将浏览器标记出来或最小化几分钟时,它会在返回时挂起几秒钟,或者它会完全崩溃。我怀疑这是由于浏览器很智能并且在不使用时会冻结标签。但是我很困惑如何解决这个问题?
解决方案
推荐阅读
- javascript - Knockout 无法处理绑定 With、options 等
- reactjs - 具有大表单的 ReactJs,在输入文本字段时有延迟
- python - discord.py 中的 Nuke 命令
- python - 以随机顺序运行功能
- python - 如何在使用 tensorflow 时使用 logits 而不是概率来定义自定义损失函数
- reactjs - 如何在反应中将对象数组作为道具传递?
- java - 用 Java 读取 XML API 响应
- reactjs - 反应钩子形式渲染太多次
- python - 如何根据开始日期和结束日期之间的设定时间间隔来扩展带有额外行的 DataFrame?
- android - android studio 中的活动不显示任何内容,但也返回错误