接上个内容, 问题:首次进入时调用了两次接口

当第一次进入 报警 时,默认选中的是 终端报警,此时查看会发现调用了两次接口。


可以发现,componentDidMount 和 componentWillReceiveProps 两个生命周期函数都执行了,因而导致了两次调用接口。以我的理解是,生命周期从开始,运行到 componentDidMount时,执行了里面的函数;在运行到componentWillReceiveProps 生命周期试,父组件传递过来的值触发了这个生命周期函数,因而里面的函数再次执行了,


后查看生命周期函数,感觉在componentDidMount 生命周期函数赋值,不如改成componentWillMount 这个周期获取时间并赋值,通过判断start_date 是否有值来决定这个周期里面的赋值函数是否运行。

现在已经能解决第一次进入后会调用两次接口的问题,以后可能还会有更好的解决方式。

posted @ 2018-09-06 14:39  坚持g  阅读(1493)  评论(0编辑  收藏  举报