博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接上个内容, 问题:首次进入时调用了两次接口
阅读量:4672 次
发布时间:2019-06-09

本文共 435 字,大约阅读时间需要 1 分钟。

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

1412615-20180906135211238-911581600.png
1412615-20180906143602974-1753685656.png
可以发现,componentDidMount 和 componentWillReceiveProps 两个生命周期函数都执行了,因而导致了两次调用接口。以我的理解是,生命周期从开始,运行到 componentDidMount时,执行了里面的函数;在运行到componentWillReceiveProps 生命周期试,父组件传递过来的值触发了这个生命周期函数,因而里面的函数再次执行了,
1412615-20180906144111223-1488503296.png
1412615-20180906144221698-119863645.png
后查看生命周期函数,感觉在componentDidMount 生命周期函数赋值,不如改成componentWillMount 这个周期获取时间并赋值,通过判断start_date 是否有值来决定这个周期里面的赋值函数是否运行。
1412615-20180906144927002-754575734.png

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

转载于:https://www.cnblogs.com/xk-g/p/9598231.html

你可能感兴趣的文章
浅析libuv源码-node事件轮询解析(1)
查看>>
JS——try catch throw
查看>>
Python 学习2
查看>>
在Recyclerview使用GlideAPP加载大量图片导致内存溢出(oom)
查看>>
js代码格式化工具(格式化、压缩、加密压缩)
查看>>
HTML特殊符号
查看>>
【vijos P1914】【codevs 3904】[NOIP2014 普及组T4]子矩阵(dfs+状压dp)
查看>>
MySQL 处理海量数据时一些优化查询速度方法
查看>>
ubuntu 安装nginx 并开启目录浏览功能
查看>>
leetcode[94]Binary Tree Inorder Traversal
查看>>
nginx的addition模块在响应的前后报文添加内容与变量的运行原理
查看>>
Sql日期时间格式转换
查看>>
Winform中ComcoBox控件设置选定项
查看>>
chrome调试技巧
查看>>
concurrency runtime学习笔记之二:并行
查看>>
python基础(三)
查看>>
GraphQL实战经验和性能问题的解决方案
查看>>
MySql大数据量恢复
查看>>
java-字符串反转
查看>>
获取一个目录下的所有文件
查看>>