为了账号安全,请及时绑定邮箱和手机立即绑定

我如何制作计时器?

我如何制作计时器?

慕雪6442864 2022-07-01 16:21:12
我想计算用户在我的应用程序上停留的时间,例如,当我的反应原生 iOS 应用程序进入前台时。然后,一旦它移到后台,我想捕获它在前台的秒数(然后将其发送到分析,但这是另一项任务)。到目前为止,这就是我正在做的事情,但它说的是它'cannot read property 'second' of undefined'。我如何达到这个结果?class Home extends Component {  constructor(props) {      super(props)      this.state = {        second: 0      }  } componentDidMount = async () => {    AppState.addEventListener('change', this.onAppStateChange)  }  //Tracks when app is brought to foreground or background  onAppStateChange(appState) {        if(appState === 'active') {         //User is ON App       console.log('ON');      this.timer = setInterval(() => {        this.setState ({ second: this.state.second + 1 }) },        1000      )    }    if(appState === 'background') {      //User is OFF App      console.log('OFF');      clearInterval(this.timer);      console.log(this.state.second)    }  }}
查看完整描述

1 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

只需在构造函数中绑定this到您的函数或使用如下箭头函数:


this.onAppStateChange = this.onAppStateChange.bind(this)

or onAppStateChange = () => {

  //your code

}


查看完整回答
反对 回复 2022-07-01
  • 1 回答
  • 0 关注
  • 131 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信