StructureBuilder / react-keep-alive

A component that maintains component state and avoids repeated re-rendering.
MIT License
981 stars 105 forks source link

removeCache方法匹配key和name的bug #130

Closed Harres-hub closed 2 years ago

Harres-hub commented 2 years ago

removeCache方法在对比key和name时,匹配逻辑有问题,比如从/management跳转到/management/detail时(/management和/management/detail都是name属性的值),卸载detail页面,会报错,原因是先匹配到了/mangement部分,当我把/management/detail换成/detail就不会报错了。

Harres-hub commented 2 years ago

当removeCache传的是string时,源码中name.indexOf(keepAliveObject.children._owner.key) > -1这样判断时会出现问题的,而且传的是string[]时,判断的方式同样是name.indexOf(keepAliveObject.children._owner.key) > -1,两个if分支内写的同样的代码,应该有一些问题。