工作中遇到的奇怪bug😂不吐不快(5)

2019-08-21

前情提要

工作嘛,总有一堆烦心事;每天就是努力扮演一个情绪稳定的成年人。
然后在遇到奇奇怪怪的bug之后,总能一秒破功,让人抓狂,尤其是当bug实在是太智障的时候,让人不禁想问一句:“这尼玛都什么沙雕玩意儿?!”

⚠️在此绝不diss任何码农、攻城狮、程序猿。生活不易,头顶易秃,和气生财。

React中同一事件分割处理

这个槽不用我吐了,官方自己就说了:

我们经常维护一些组件,组件起初很简单,但是逐渐会被状态逻辑和副作用充斥。
每个生命周期常常包含一些不相关的逻辑。
例如,组件常常在 componentDidMount 和 componentDidUpdate 中获取数据。
但是,同一个 componentDidMount 中可能也包含很多其它的逻辑,
如设置事件监听,而之后需在 componentWillUnmount 中清除。
相互关联且需要对照修改的代码被进行了拆分,
而完全不相关的代码却在同一个方法中组合在一起。
如此很容易产生 bug,并且导致逻辑不一致。

今天是第二次掉坑里了。测试环境时,接口返回数据快在 componentDidMount 就获取到了数据,一切ok。到了preview环境里,接口速度慢,结果 componentDidMount 里是默认的数据,因此导致渲染之后样式展示错误。
不论怎么说,这个坑,踩了两次,事不过三。


不论你信不信,我感觉下次还能掉坑里😹
但是往好了想,有了以往的经验…
往坑里掉的时候,说不定还能来个360°转体满分落地呢~