一种应用界面更新系统和方法与流程

文档序号:13421341阅读:122来源:国知局
本发明涉及计算机
技术领域
:,特别涉及一种应用界面更新系统和方法。
背景技术
::随着互联网技术的发展和浏览器性能的提升,web应用的规模和复杂度越来越高,在web应用的使用过程中,web应用界面经常需要根据用户的动作进行更新。例如,当接收到用户的动作触发时,现有界面有十处位置需要进行更新,现有的更新方法需要确定每一处位置对应的更新规则,利用更新规则对不同的位置进行更新。但是,在该方法中,界面更新操作与交互逻辑高度耦合:一旦界面结构发生调整,需要遍历大量代码对相应的界面操作进行更新,导致程序稳定性下降。技术实现要素:本发明实施例提供了一种应用界面更新系统和方法,能够提高程序稳定性。第一方面,本发明实施例提供了一种应用界面更新系统,包括:动作派发器和至少一个已注册动作处理器;所述动作派发器,用于存储每一个所述已注册动作处理器的标识信息;确定触发应用界面的动作信息,其中,所述动作信息中包括:目标动作类型;根据每一个所述已注册动作处理器的标识信息,将所述动作信息派发给每一个所述已注册动作处理器;每一个所述已注册动作处理器,用于设置至少一个动作类型,为每一个所述动作类型设置对应的更新规则;判断所述至少一个动作类型中是否存在所述动作信息中包括的目标动作类型,如果是,确定所述目标动作类型对应的目标更新规则,根据所述目标更新规则对所述应用界面进行更新。优选地,所述动作信息中进一步包括:上下文信息;每一个所述已注册动作处理器,用于根据所述目标更新规则和所述上下文信息对所述应用界面进行更新。优选地,所述动作派发器,进一步用于设置派发记录表,将所述动作信息添加进所述派发记录表。第二方面,本发明实施例提供了一种基于上述任一实施例所述应用界面更新系统的应用界面更新方法,包括:动作派发器存储至少一个已注册动作处理器的标识信息;每一个所述已注册动作处理器设置至少一个动作类型,为每一个所述动作类型设置对应的更新规则;所述动作派发器确定触发应用界面的动作信息,其中,所述动作信息中包括:目标动作类型;根据每一个所述已注册动作处理器的标识信息,将所述动作信息派发给每一个所述已注册动作处理器;每一个所述已注册动作处理器判断所述至少一个动作类型中是否存在所述动作信息中包括的目标动作类型,如果是,确定所述目标动作类型对应的目标更新规则,根据所述目标更新规则对所述应用界面进行更新。优选地,所述动作信息中进一步包括:上下文信息;所述根据所述目标更新规则对所述应用界面进行更新,包括:根据所述目标更新规则和所述上下文信息对所述应用界面进行更新。优选地,进一步包括:所述动作派发器设置派发记录表;在所述将所述动作信息派发给每一个所述已注册动作处理器之后,进一步包括:将所述动作信息添加进所述派发记录表。第三方面,本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行上述任一实施例所述的方法。第四方面,本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行上述任一实施例所述的方法。本发明实施例提供了一种应用界面更新系统和方法,其中,在该系统中,动作派发器可以将触发应用界面的动作信息派发给每一个已注册动作处理器,已注册动作处理器中设置有该已注册动作处理器可以处理的动作类型和与动作类型相对应的更新规则,当已注册动作处理器设置有动作信息中的目标动作类型时,利用与目标动作类型对应的目标更新规则对应用界面进行更新。该系统通过动作派发器实现对动作的统一派发,由已注册动作处理器确定是否进行处理,界面更新操作与交互逻辑耦合度降低,能够提高程序稳定性。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一个实施例提供的一种应用界面更新系统的结构示意图;图2是本发明一个实施例提供的一种应用界面更新方法的流程图;图3是本发明另一个实施例提供的一种应用界面更新方法的流程图;图4是本发明一个实施例提供的一种应用界面的结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,本发明实施例提供了一种应用界面更新系统,包括:动作派发器101和至少一个已注册动作处理器102;动作派发器101,用于存储每一个已注册动作处理器102的标识信息;确定触发应用界面的动作信息,其中,动作信息中包括:目标动作类型;根据每一个已注册动作处理器的标识信息,将动作信息派发给每一个已注册动作处理器102;每一个已注册动作处理器102,用于设置至少一个动作类型,为每一个动作类型设置对应的更新规则;判断至少一个动作类型中是否存在动作信息中包括的目标动作类型,如果是,确定目标动作类型对应的目标更新规则,根据目标更新规则对应用界面进行更新。在图1所示的本发明实施例中,在该系统中,动作派发器可以将触发应用界面的动作信息派发给每一个已注册动作处理器,已注册动作处理器中设置有该已注册动作处理器可以处理的动作类型和与动作类型相对应的更新规则,当已注册动作处理器设置有动作信息中的目标动作类型时,利用与目标动作类型对应的目标更新规则对应用界面进行更新。该系统通过动作派发器实现对动作的统一派发,由已注册动作处理器确定是否进行处理,界面更新操作与交互逻辑耦合度降低,能够提高程序稳定性。动作派发器使用观察者模式,通过注册方法将动作处理器注册到派发器,通过注销方法将动作处理器从派发器中移除,通过派发方法将动作派发给已注册的动作处理。以下是一个动作派发器实现示例,代码如下:在本发明的一个实施例中,为了根据用户输入的上下文信息对应用界面进行更新,动作信息中进一步包括:上下文信息;每一个已注册动作处理器,用于根据目标更新规则和上下文信息对应用界面进行更新。实现本方法需要定义以下接口:动作接口、动作处理接口、动作派发器接口,动作接口用于描述触发应用界面更新的动作,所有的应用界面更新必须由动作触发,具体描述如下:interfaceiaction{type:string;context?:any;}其中,type表示动作类型,context表示动作触发时的上下文信息,context可选。例如,当动作为增加时,上下文信息中包括用户要增加的内容,当动作为刷新时,动作信息中不包含上下文信息。动作派发器接口用于描述如何将动作派发给相关的界面操作,具体描述如下:interfaceidispatcher{dispatch(action:iaction):void}其中,dispatch方法用于将动作派发给相关的动作处理。动作处理接口用于描述如何根据特定的动作进行界面更新,具体描述如下:interfaceiactionhandler{process(action:iaction):void;}其中,process接受一个动作作为参数,根据动作的不同执行不同的界面更新操作。除了对动作信息进行派发,还可以对动作派发器的功能进行拓展。例如,在派发过程中记录日志,对派发的错误进行记录。动作派发扩展接口用于描述动作派发扩展函数的结构,具体描述如下:interfaceidispatchextender{(dispatcher:idispatcher):idispatcher}动作派发器扩展函数接收一个动作派发器作为参数,用扩展之后的dispatch方法替换动作派发器原来的dispatch方法,并返回一个扩展之后的动作派发器。一个简单的扩展应用函数示例如下:在本发明的一个实施例中,为了对已派发的动作信息进行记录,动作派发器,进一步用于设置派发记录表,将动作信息添加进派发记录表。以下是对动作派发器进行日志拓展和错误处理扩展的代码示例:如图2所示,本发明实施例提供了一种基于上述任一实施例应用界面更新系统的应用界面更新方法,包括:步骤201:动作派发器存储至少一个已注册动作处理器的标识信息;步骤202:每一个已注册动作处理器设置至少一个动作类型,为每一个动作类型设置对应的更新规则;步骤203:动作派发器确定触发应用界面的动作信息,其中,动作信息中包括:目标动作类型;根据每一个已注册动作处理器的标识信息,将动作信息派发给每一个已注册动作处理器;步骤204:每一个已注册动作处理器判断至少一个动作类型中是否存在动作信息中包括的目标动作类型,如果是,执行步骤205;步骤205:确定目标动作类型对应的目标更新规则,根据目标更新规则对应用界面进行更新。在本发明的一个实施例中,动作信息中进一步包括:上下文信息;根据目标更新规则对应用界面进行更新,包括:根据目标更新规则和上下文信息对应用界面进行更新。在本发明的一个实施例中,该方法还包括:动作派发器设置派发记录表;在将动作信息派发给每一个已注册动作处理器之后,进一步包括:将动作信息添加进派发记录表。本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行执行指令时,存储控制器执行上述任一实施例的方法。本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;存储器用于存储执行指令,处理器与存储器通过总线连接,当存储控制器运行时,处理器执行存储器存储的执行指令,以使存储控制器执行上述任一实施例的方法。如图3所示,本发明实施例以动作派发器与两个已注册动作处理器组成的应用界面更新系统为例,对应用界面更新方法进行详细地说明,该方法包括:步骤301:动作派发器存储两个已注册动作处理器的标识信息,设置派发记录表。如图4所示,应用界面的结构如下:左侧是一个员工列表,列表下方是一个新增按钮;右侧是一个员工表单,表单中包含姓名、年龄两个输入框和一个保存按钮。该应用界面功能的交互描述如下:点击新增按钮:在员工列表中新增一行,同时渲染员工信息的默认值到员工表单的输入框中;点击保存按钮:将员工表单输入框中的信息同步到员工列表中,同时清空员工表单的输入框。应用界面结构代码如下:<divid="left"><!--员工列表--><tableid="employee-list"><thead><tr><th>姓名</th><th>年龄</th></tr></thead><tbody><tr><td>员工1</td><td>31</td></tr></tbody></table><!--新增按钮--><buttonid="add-btn">新增</button></div><divid="right"><!--员工表单--><form><dlid="employee-card"><dt>姓名</dt><dd><inputtype="text"id="name-input"/></dd><dt>年龄</dt><dd><inputtype="number"id="age-input"/></dd><dd><!--保存按钮--><buttonid="submit-btn">保存</button></dd></dl></form></div>用于构造新增和保存动作的工厂函数,具体代码如下:步骤302:每一个已注册动作处理器设置至少一个动作类型,为每一个动作类型设置对应的更新规则。已注册动作处理器包括员工列表界面动作处理器和员工表单界面动作处理器,前者负责左侧员工列表更新,后者负责右侧表单更新。步骤303:动作派发器确定触发应用界面的动作信息,其中,动作信息中包括:目标动作类型和上下文信息;根据每一个已注册动作处理器的标识信息,将动作信息派发给每一个已注册动作处理器,将动作信息添加进派发记录表。步骤304:每一个已注册动作处理器判断至少一个动作类型中是否存在动作信息中包括的目标动作类型,如果是,执行步骤305.步骤305:确定目标动作类型对应的目标更新规则,根据目标更新规则和上下文信息对应用界面进行更新。上述方法中的各步骤之间的信息交互、执行过程等内容,由于与本发明系统实施例基于同一构思,具体内容可参见本发明系统实施例中的叙述,此处不再赘述。综上,本发明各个实施例至少具有如下效果:1、在本发明实施例中,在该系统中,动作派发器可以将触发应用界面的动作信息派发给每一个已注册动作处理器,已注册动作处理器中设置有该已注册动作处理器可以处理的动作类型和与动作类型相对应的更新规则,当已注册动作处理器设置有动作信息中的目标动作类型时,利用与目标动作类型对应的目标更新规则对应用界面进行更新。该系统通过动作派发器实现对动作的统一派发,由已注册动作处理器确定是否进行处理,界面更新操作与交互逻辑耦合度降低,能够提高程序稳定性。2、在本发明实施例中,该系统提供了统一的入口、出口,能够进行统一的扩展,例如,对动作派发器的派发过程进行记录,统一处理动作派发、执行的过程中出现的错误。需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1