【发布时间】:2018-02-18 19:31:44
【问题描述】:
我必须每隔一两秒监控屏幕上的一些数据更新信息。 我认为使用此实现的方式:
componentDidMount() {
this.timer = setInterval(()=> this.getItems(), 1000);
}
componentWillUnmount() {
this.timer = null;
}
getItems() {
fetch(this.getEndpoint('api url endpoint"))
.then(result => result.json())
.then(result => this.setState({ items: result }));
}
这是正确的方法吗?
【问题讨论】:
-
这是一种方法,但效率低下,并且会在您扩展应用程序时使您的服务器过载。如果使用socket连接,可以在消息到达时得到通知,效率会高很多
-
我只有 REST API 可以使用...我怎样才能以正确的方式进行这种“池化”?
-
这取决于您的服务器中使用的技术。你应该阅读一下 web sockets 是如何工作的,这里有一篇文章 blog.teamtreehouse.com/an-introduction-to-websockets 但是周围有很多资源可以玩
标签: javascript reactjs polling