React Native获取动态数据

我的api中有每秒变化的数据,我应该使用setInterval动态获取它以响应本机屏幕和即时消息 我写了一个发送请求并每秒获取数据的函数,我应该刷新此函数,并且确实使用了setInterval,但是我不确定这是否健康?我也无法解决这个问题,因为我得到一个错误:

Possible Unhandled Promise Rejection (id: 7):
    TypeError: _this2.setState is not a function. (In '_this2.setState({
        kalanzaman: res.data
    })','_this2.setState' is undefined)

我的func及其命名方式:

  dynamically() {
    // console.log("bom")
    axios.get(`http://localhost:5000/kalanzaman`)
      .then(res => {
        this.setState({ kalanzaman: res.data })
      })
  }

setInterval(this.dynamically,1000)

我应该采用哪种方式获取动态数据以从api响应本机?

maimang 回答:React Native获取动态数据

可以使用Websocket代替Http请求。 这是用户浏览器和服务器之间的双向交互式通信会话。 例如:看看Socket.IO

,

如果这样写也许会更好:

setInterval(() => {
  dynamically() {
    // console.log("bom")
    axios.get(`http://localhost:5000/kalanzaman`)
      .then(res => {
        this.setState({ kalanzaman: res.data })
      }).catch((error) => {
        alert('Something Error')
     })
  } 
},100);

您必须使用cath()捕获错误,并将其放在 componentDidMount

本文链接:https://www.f2er.com/3167283.html

大家都在问