Skip to content

背景

WARNING

针对系统中的一个功能模块来讲,系统中有这么一个下单的功能,但是在下单之前会有一个提示重复下单的功能弹框,用于提醒用户是否是重复下单,但是现在的一个异常点就是, 重复提示弹框会闪烁不显示,属于一个功能异常模块的优化;

场景

一个类似电商下单页面功能,填写下单用户的基本信息, 或者智能识别信息,计算自带费用以及三方费用; 下单之前检验在短时间内重复下单的提示;

现在就是弹窗不显示,逻辑看上去也没报错但是就是弹框不显示,这样造成的影响虽然并不严重,但是也是一个功能异常的 bug;

在短时间内重复下单,会有提示框,确保是用户自行下单操作,而不是误操作的;确保自己的数据的准确性的,但是没有了这一步,如果用户,填写了相对应的信息,在考虑要不要下单,如果不小心点了下单按钮(误操作),这是用户虽然知道下单了,但是账户金额充足的情况下会自动扣款,这样的情况,就会联系客户;或者自行撤单了;

在确保业务正常的情况下,少这一步确实会有一定的影响,类似的问题在其他页面也多多少少也会有;

问题分析

如果图片显示较小,可以点击图片放大查看!

下单提示异常

总结

根据上图分析,可以看出,在多个请求的前提下,下一次的请求会把上一次的所有弹框清除掉,即dialog.closeAll(), 而对于closeAll()是有一个参数的,默认或者不存在值的情况会清除所有的弹框,正常的情况,加载层和逻辑弹框是不会冲突的,这样操作就会对业务的造成一定的影响;

每次请求指示吧加载层去除,那么这里就不会有这样的问题;而原有获取加载层id的返回值为undefined,那么这里的closeAll()就会清楚所有的,优化之后的加载层id是一个自增的状态,不会重复,那么closeAll(id)就只会把加载层销毁;这样就不会对业务造成影响;

因为代码业务逻辑是公司内部的,这里就不方便展示了;会用一张图片展示效果;

最终效果

wangxiaoze | MIT License.