System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,特别是涉及一种对话框的显示方法、装置、电子设备及可读存储介质。
技术介绍
1、目前,web(万维网)页面或应用程序的页面在接收到某些事件时,会在页面中显示对话框。例如,用户在页面中点击了某一商品的购买按钮,可以弹出一个购买确认对话框,用于提醒用户确认是否购买该商品,进而根据用户与该对话框进行交互情况,能够确认用户是否购买该商品。在确认购买的情况下,则可以根据该确认购买的信息执行后续处理,同时关闭该对话框;在确认不购买的情况下,则可以直接关闭该对话框,而无需执行其他后续操作。
2、相关技术中,针对页面中可能会展示的各个对话框,都需要分别设置一个状态变量,以管理对话框的状态,以在该状态变量表示打开状态时,触发对应的对话框的显示,以及在该状态变量表示关闭状态时,触发对应的对话框的关闭。可见,当对话框的数量较多时,状态变量的数量也会随之变多,这就加重了页面开发过程中代码冗余的问题。
技术实现思路
1、本专利技术实施例的目的在于提供一种对话框的显示方法、装置、电子设备及可读存储介质,以减少页面开发过程中代码冗余。具体技术方案如下:
2、在本专利技术实施的一个方面,首先提供了一种对话框的显示方法,所述方法包括:
3、当检测到目标页面的对话框打开事件时,获取该对话框打开事件对应的对话框标识,作为目标标识;
4、创建所述目标标识对应的对话框实例,以显示对应的对话框;其中,每一对话框实例均包含用于销毁该对话框实例的第一函数;
>5、创建用于处理异步操作任务的预设对象;其中,所述预设对象包含:用于在所述预设对象处于结束状态时执行的第二函数;所述第二函数与所述第一函数相绑定;
6、将所述预设对象中的用于变更对象状态的第三函数注入所述目标标识对应的对话框实例;
7、当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,以触发所述第二函数调用所述第一函数,实现对所显示的对话框的关闭。
8、可选地,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为成功状态,并获取异步操作任务执行结果的第四函数;
9、所述当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,包括:
10、当检测到针对所显示的对话框的关闭操作时,若该关闭操作表示用户需要通过对话框传递信息,则调用所述第四函数获取该关闭操作所传递的信息作为异步操作任务执行结果,以及将所述预设对象的状态变更为结束状态。
11、可选地,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为失败状态的第五函数;所述当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,包括:
12、当检测到针对所显示的对话框的关闭操作时,若该关闭操作表示用户无需通过对话框传递信息,则调用所述第五函数将所述预设对象的状态变更为执行失败状态。
13、可选地,所述创建所述目标标识对应的对话框实例,以显示对应的对话框,包括:
14、创建所述目标标识对应的对话框实例;
15、将用于获取对话框打开事件所传递参数的第六函数注入所述目标标识对应的对话框实例;
16、调用所述第六函数获取该对话框打开事件所传递的参数,以显示包含所获取的参数的对话框。
17、可选地,所述方法还包括:
18、在目标标识对应的对话框处于显示状态时,调用预设的页面滑动禁止函数,停止所述目标页面的页面滑动功能;
19、在目标标识对应的对话框被关闭时,调用预设的页面滑动恢复函数,以恢复所述目标页面的页面滑动功能。
20、在本专利技术实施的另一方面,还提供了一种对话框的显示装置,所述装置包括:
21、标识获取模块,用于当检测到目标页面的对话框打开事件时,获取该对话框打开事件对应的对话框标识,作为目标标识;
22、对话框创建模块,用于创建所述目标标识对应的对话框实例,以显示对应的对话框;其中,每一对话框实例均包含用于销毁该对话框实例的第一函数;
23、对象创建模块,用于创建用于处理异步操作任务的预设对象;其中,所述预设对象包含:用于在所述预设对象处于结束状态时执行的第二函数;所述第二函数与所述第一函数相绑定;
24、注入模块,用于将所述预设对象中的用于变更对象状态的第三函数注入所述目标标识对应的对话框实例;
25、关闭模块,用于当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,以触发所述第二函数调用所述第一函数,实现对所显示的对话框的关闭。
26、可选地,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为成功状态,并获取异步操作任务执行结果的第四函数;
27、所述关闭模块,具体用于:
28、当检测到针对所显示的对话框的关闭操作时,若该关闭操作表示用户需要通过对话框传递信息,则调用所述第四函数获取该关闭操作所传递的信息作为异步操作任务执行结果,以及将所述预设对象的状态变更为结束状态。
29、在本专利技术实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
30、存储器,用于存放计算机程序;
31、处理器,用于执行存储器上所存放的程序时,实现上述任一所述的对话框的显示方法。
32、在本专利技术实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的对话框的显示方法。
33、在本专利技术实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的对话框的显示方法。
34、本专利技术实施例提供的对话框的显示方法,当检测到目标页面的对话框打开事件时,获取该对话框打开事件对应的对话框标识,作为目标标识,创建对应的对话框实例,实现了对话框的显示;进而创建用于处理异步操作任务的预设对象,该预设对象在处于结束状态时会执行的第二函数,且第二函数与用于销毁该对话框实例的第一函数相绑定;在此基础上,将预设对象中的用于变更对象状态的第三函数注入该对话框实例中,以在检测到针对所显示的对话框的关闭操作时,可以通过调用第三函数将预设对象的状态变更为结束状态,以触发第二函数调用相绑定的第一函数,将所创建的对话框实例销毁以实现对所显示的对话框的关闭。可见,本方案中,针对页面需要打开的任一对话框本文档来自技高网...
【技术保护点】
1.一种对话框的显示方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为成功状态,并获取异步操作任务执行结果的第四函数;
3.根据权利要求1所述的方法,其特征在于,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为失败状态的第五函数;所述当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,包括:
4.根据权利要求1所述的方法,其特征在于,所述创建所述目标标识对应的对话框实例,以显示对应的对话框,包括:
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
6.一种对话框的显示装置,其特征在于,所述装置包括:
7.根据权利要求6所述的装置,其特征在于,所述结束状态包括:表示异步操作任务执行成功的成功状态,和
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序在计算机上运行时,使得计算机实现权利要求1-5任一所述的方法。
...【技术特征摘要】
1.一种对话框的显示方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为成功状态,并获取异步操作任务执行结果的第四函数;
3.根据权利要求1所述的方法,其特征在于,所述结束状态包括:表示异步操作任务执行成功的成功状态,和表示异步操作任务执行失败的失败状态;所述第三函数包括:用于将所述预设对象的状态变更为失败状态的第五函数;所述当检测到针对所显示的对话框的关闭操作时,调用所述第三函数将所述预设对象的状态变更为结束状态,包括:
4.根据权利要求1所述的方法,其特征在于,所述创建所述目标标识对应的对话框实例,以显示对应的对话框,包括:
5.根据权利要求1-4任一项所述的方法,其特征在于...
【专利技术属性】
技术研发人员:杜随心,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。