今天重构医废平台h5页面快要完工的时候,测试大哥又给我找了个bug,当列表中只有一条数据时,删除后还保留着,不能重复删除,但是列表中有多条数据时不会出现保留数据的情况,是我一时傻了,究其原因是删除数据后没有重新加载页面。我自己尝试着删除数据后重新获取列表数据,数据还是保留着,又试了试路由跳转的方法,还是不行,从网上找了个不大合适的方法(我觉得挺好的),使用this.$router.go(0),会强制刷新,出现空白页面体验不好。还有一种最佳方法,我没有尝试,因为this.$router.go(0)已经重新加载页面了,原谅我没有精益求精的精神,实在是被h5页面搞得烦了,后来仔细检查代码为什么重新向后台获取删除后的数据会出问题,原来是获取列表数据之前没有将列表置空。置空后列表数据删除就没有问题了。从这个问题上我知道了任何开发产品都没有一开始就完善的产品,要有不断修改的心理准备。
// _this.$router.go(0);在ios上测试无效。
// _this.$router.push("/showWaste?userId=" + this.userId);
_this.getWasteList();
之后在苹果手机上又测试出了问题,有时候删除数据后,列表数据没有刷新,汗~测试大哥该换手机了。于是又重新按照网上最终解决方案:provide / inject 组合 依赖注入,就是控制App.vue的显示隐藏。具体操作参照:https://blog.csdn.net/qq_39009348/article/details/81698316
下面是provide / inject 组合部分代码
代码有不足之处,望大家多多指教。