react项目,今天碰到一个头疼的问题,props改变了但componentWillReceiveProps未触发,一开始直接用浏览器调试没有找到原因,之后输出console才发现原来并不是componentWillReceiveProps没有触发,而是我在函数里做的当前数据与将要获取的数据对比时出了问题。问题并不复杂,但这个问题定位,额,让人头大,浪费了不少时间~
一开始我是用toString的方法去判断前后数据的,由于我的页面可视化绘制内容太多,所以我的数据结构相对比较复杂;这里注意toString的方法对于复杂结构的数据判断是不好使的!!!
找到原因后就好解决多了,我这里是用es6 new一个 Set 对象的方法去重通过数组长度和那两组长度是否相等来判断,当然在这之前最好先判断两组数据length是否相等,如果不相等那直接就可以判断了。