一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据调用方法、装置、电子设备及计算机存储介质与流程

2022-02-21 08:20:21 来源:中国专利 TAG:


1.本技术实施例涉及计算机软件技术领域,尤其涉及一种数据调用方法、装置、电子设备及计算机存储介质。


背景技术:

2.应用程序(英文:application,app)中,为了集成动态变化的功能服务通常会使用动态页面,不同的动态页面需要不同容器承载。为减少应用程序的大小,不同容器之间存在功能复用的需求,但由于不同的容器实现机制差异,导致不同的容器之间存在无法直接进行数据通信的问题,为解决该问题,相关技术中,通过桥接的方式实现不同容器间的数据通信,但是,桥接的方案中,需要针对每种特定场景开发不同的桥接方式,开发成本比较高。


技术实现要素:

3.有鉴于此,本技术实施例提供一种数据调用方法、装置、电子设备及计算机存储介质,以解决上述部分或全部问题。
4.根据本技术实施例的第一方面,提供了一种数据调用方法,包括:在第一容器加载第一页面时,如果第一页面需调用第二页面的数据,将第一容器的预设接口在页面栈管理器注册为第二页面的监听者;页面栈管理器响应于跳转第二页面的请求,跳转到第二页面,利用第二容器加载第二页面;在预设接口监听到第二页面的返回结果事件时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器;利用第一容器及第二页面的数据加载第一页面。
5.根据本技术实施例的第二方面,提供了一种数据调用装置,包括:注册模块,用于在第一容器加载第一页面时,如果第一页面需调用第二页面的数据,将第一容器的预设接口在页面栈管理器注册为第二页面的监听者;页面管理模块,用于页面栈管理器响应于跳转第二页面的请求,跳转到第二页面,利用第二容器加载第二页面;监听模块,用于在预设接口监听到第二页面的返回结果事件时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器;页面管理模块,用于利用第一容器及第二页面的数据加载第一页面。
6.根据本技术实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行如第一方面的数据调用方法对应的操作。
7.根据本技术实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面的数据调用方法。
8.本技术实施例提供的数据调用方法、装置、电子设备及计算机存储介质,在利用第一容器加载第一页面时,如果第一页面需调用第二页面的数据,通过将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,从而利用预设接口监听第二页面,在监听到第二页面的返回结果事件时,可以通过页面栈管理器和预设接口将第二页面的数据回调至
第一容器,实现了容器之间的数据通信,而将一个接口注册为某个页面的监听者,不需要单独开发,其应用范围更广,而且实现起来非常便捷,降低了开发成本。
附图说明
9.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
10.图1为本技术实施例一提供的一种数据调用方法的场景示意图;
11.图2为本技术实施例一提供的一种数据调用方法的流程图;
12.图3为本技术实施例一提供的一种页面栈的示意图;
13.图4为本技术实施例一提供的另一种数据调用方法的场景示意图;
14.图5为本技术实施例二提供的一种数据调用装置的结构框图;
15.图6为本技术实施例三提供的一种电子设备的结构示意图。
具体实施方式
16.为了使本领域的人员更好地理解本技术实施例中的技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本技术实施例保护的范围。
17.下面结合本技术实施例附图进一步说明本技术实施例具体实现。
18.实施例一
19.本技术实施例一提供一种数据调用方法,应用于数据调用装置,为了便于理解,对本技术实施例一所提供的数据调用方法的应用场景进行说明,参照图1所示,图1为本技术实施例一提供的一种数据调用方法的场景示意图。图1所示的场景中示出了数据调用装置的各个功能模块,数据调用装置具体包括:第一容器、第二容器、预设接口及页面栈管理器。需要说明的是,这些功能模块可以通过处理器、以及存储器等硬件结构实现,该存储器可以存储用于实现这些功能模块的程序。
20.其中,第一容器用于加载第一页面,第二容器用于加载第二页面,第一容器和第二容器调用数据的规则不同;预设接口用于实现预设功能,该预设功能依赖于第二页面的数据,即依赖于第二容器的功能;页面栈管理器用于对页面栈(至少包括第一页面和第二页面)进行管理。
21.数据调用装置还可以接入网络,通过网络与云端连接,并进行数据交互,本技术中,网络包括局域网(英文:local area network,lan)、广域网(英文:wide area network,wan)、移动通信网络;如万维网(英文:world wide web,www)、长期演进(英文:long term evolution,lte)网络、2g网络(英文:2th generation mobile network)、3g网络(英文:3th generation mobile network),5g网络(英文:5th generation mobile network)等。当然,此处只是示例性说明,并不代表本技术局限于此。
22.如图1所示,在第一容器加载第一页面时,如果第一页面需调用第二页面的数据,
将第一容器的预设接口在页面栈管理器注册为第二页面的监听者;利用页面栈管理器跳转到第二页面,利用第二容器加载第二页面,第二容器在加载第二页面的过程中得到第二页面的数据;在利用预设接口监听到第二页面返回结果时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器;利用第一容器及第二页面的数据加载第一页面。
23.结合图1所示的场景,详细说明本技术实施例一提供的数据调用方法,需要说明的是,图1只是本技术实施例一提供的数据调用方法的一种应用场景,并不代表该数据调用方法必须应用于图1所示的场景,参照图2所示,图2为本技术实施例一提供的一种数据调用方法的流程图,该方法包括以下步骤:
24.步骤201、在第一容器加载第一页面时,如果第一页面需调用第二页面的数据,将第一容器的预设接口在页面栈管理器注册为第二页面的监听者。
25.容器可以是一个打包的软件单元,以便应用程序从一个计算环境运行到另一个计算环境。在本技术中,第一容器可以用于加载第一页面,第一页面可以是任意一个页面。可选地,预设接口所实现的预设功能依赖于第二容器,且第一容器不能实现该预设功能。第二容器可以用于加载第二页面,因为第一容器不能实现预设功能,而预设功能的实现又依赖于第二容器,因此,需要通过预设接口调用第二容器实现预设功能后返回的数据,也就是第一页面通过预设接口调用第二页面的数据,在一种实现方式中,预设接口为第一容器调用第二容器的数据的接口。
26.页面栈管理器用于对页面栈进行管理,页面栈可以包含多个页面,多个页面至少包括第一页面和第二页面,如图3所示,图3为本技术实施例一提供的一种页面栈的示意图,页面栈中可以插入和删除页面,插入页面也可以称为入栈,删除页面也可以称为出栈。页面栈中的页面可以进行读取,从而显示给用户。页面栈管理器可以对页面栈中各个页面的页面生命周期事件进行管理,页面生命周期事件可以包括例如:页面加载(onload)事件、页面展示(onshow)事件、页面卸载(onunload)事件等。示例性地,页面加载(onload)事件在首次进入页面,进行页面加载时触发,可以在页面加载事件的参数中获取打开页面路径的参数;页面展示事件在首次加载完成后,后台切换到前台或重新进入页面时触发;页面卸载事件在页面卸载时触发。当然,页面生命周期事件还可以包括其他事件,例如,返回结果(onresult)事件等,此处,只是示例性说明。
27.可选地,在本技术的一个实施例中,因为第一页面需调用第二页面的数据,因此,可以只监听返回结果事件,将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,包括:将预设接口在页面管理器注册为第二页面的返回结果事件的监听者。利用预设接口只监听返回结果事件,监听效率更高,不会监听其他与调用第二页面的数据不相关的事件,也减少了监听的功耗。
28.步骤202、页面栈管理器响应于跳转第二页面的请求,跳转到第二页面,利用第二容器加载第二页面。
29.需要说明的是,在本技术中,第一容器和第二容器是两个类型的容器,第一容器和第二容器调用数据的规则不同,具体地,可以是上层应用调用容器的数据调用规则不同。示例性地,第一容器和第二容器可以是小程序的容器、动态化界面技术(ajx)的容器、反应本地(英文:react native)容器、weex容器、flutter容器中类型不同的两个容器;例如,第一容器可以是小程序的容器,小程序可以是一种全球广域网(英文:world wide web,web)应
用,第二容器可以是一种动态化界面技术(ajx)的容器或者动态化容器;或者,第一容器是ajx的容器,第二容器是小程序的容器。当然此处只是示例性说明,第一容器和第二容器只要满足调用数据的规则不同即可,如果第一容器和第二容器调用规则相同,则第一容器可以直接调用第二容器的数据,即在加载第一页面的过程中,第一容器可以直接调用第二页面的数据。
30.需要说明的是,利用页面栈管理器跳转到第二页面可以是,在将预设接口注册为第二页面的监听者时发起的,即在将预设接口向页面栈管理器注册为第二页面的监听者时,发起跳转至第二页面的请求,页面栈管理器开始向第二页面跳转,然后第二容器加载第二页面,并进行显示,页面栈管理器跳转到第二页面与第二容器加载第二页面可以是同步执行的。此处,列举两个示例分别对页面栈管理器和第二容器的执行动作进行具体说明:
31.可选地,在第一个示例中中,页面栈管理器响应于跳转第二页面的请求,跳转到第二页面,包括:利用页面栈管理器的统一跳转接口,从当前页面跳转到第二页面,显示第二页面。需要说明的是,统一跳转接口用于页面栈中任意页面的跳转。利用一个统一跳转接口完成页面栈中任意页面的跳转,实现更为便捷,页面管理效率更高。
32.可选地,在第二个示例中中,利用第二容器加载第二页面,包括:利用第二容器执行第二页面的任务逻辑,并根据执行结果得到第二页面的数据。
33.需要说明的是,在第二容器执行第二页面的任务逻辑的过程中,第二页面完成逐步加载,用户就可以看到第二页面,当然,也可以是在利用页面栈管理器跳转到第二页面时,向用户显示第二页面,第二容器在后台执行任务逻辑。
34.需要说明的是,在显示第二页面的过程中,用户可以继续操作,或者用户不需要操作,以实现预设接口对应的预设功能,在实现预设功能之后,第二容器生成第二页面的数据。
35.步骤203、在预设接口监听到第二页面的返回结果事件时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器。
36.可选地,页面栈管理器可以对多个页面生命周期事件监听者进行响应,在一种实现方式中,在预设接口监听到第二页面的返回结果事件时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器,包括:页面栈管理器遍历页面生命周期事件监听者,在第二页面发生返回结果事件时,页面管理器向预设接口返回第二页面的返回结果事件的监听结果,页面栈管理器将第二页面的数据从第二容器,通过预设接口回调至第一容器。页面栈管理器遍历页面生命周期事件监听,可以对多个监听者进行响应,或者对所有监听者进行响应,从而向多个监听者返回所监听的结果,管理效率更高。利用页面栈管理器从第二容器,将第二页面的数据通过预设接口回调至第一容器,即可实现第一容器和第二容器之间的数据通信,在实现该数据通信的过程中,不需要单独开发桥接,实现更为便捷,可以应用于各种需要容器间通信的场景,适用范围更广,兼容性更好。
37.步骤204、利用第一容器及第二页面的数据加载第一页面。
38.可选地,页面栈管理器通过预设接口向第一容器返回第二页面的数据后,即可跳转至第一页面,然后利用第一容器及第二页面的数据加载第一页面。例如,在一种实现方式中,利用第一容器及第二页面的数据加载第一页面,包括:利用页面栈管理器的统一跳转接口,从第二页面跳转至第一页面;利用第一容器及第二页面的数据加载第一页面,并显示第
一页面。需要说明的是,可以根据加载进度显示第一页面。
39.结合图1所示的场景,基于上述步骤201-204的描述,此处,列举另一个具体的场景对步骤201-204所描述的数据调用方法进行说明,如图4所示,图4为本技术实施例一提供的另一种数据调用方法的场景示意图。此处,以第一容器为web小程序的容器,第二容器为ajx的容器为例进行说明,对应的,都可以页面为web小程序页面,第二页面为ajx页面,预设接口可以用于调用第二页面(ajx页面)的数据,在图4所示的场景中,预设接口可以实现选择图片的功能,该选择图片的功能web小程序无法实现,ajx的容器可以实现,因此,在实现选择图片的功能时,需要调用ajx页面的数据。
40.结合图4所示的场景,用户在小程序页面通过交互操作触发选择图片的功能,交互操作可以包括触控操作、手势操作、语音交互操作等。数据调用装置在检测到用户在小程序页面的交互操作后,小程序页面的容器调用预设接口触发选择图片的功能。具体地,预设接口向页面栈管理器发起跳转至ajx页面的请求,并将预设接口在页面栈管理器注册为ajx页面的返回结果事件的监听者,页面栈管理器将当前显示的小程序页面跳转到ajx页面,利用ajx的容器加载并渲染该ajx页面,数据调用装置显示该ajx页面,用户可以在ajx页面完成选择图片的操作,ajx的容器基于用户选择图片的操作生成ajx页面的数据,页面栈管理器遍历页面生命周期事件的监听者,在ajx的容器返回ajx页面的数据时,通过预设接口将ajx页面的数据回调至小程序的容器,页面栈管理器将当前显示的ajx页面跳转到小程序页面,小程序页面的容器根据ajx页面的数据加载小程序页面,数据调用装置向用户显示小程序页面。
41.本技术实施例提供的数据调用方法,在利用第一容器加载第一页面时,如果第一页面需调用第二页面的数据,通过将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,从而利用预设接口监听第二页面,在监听到第二页面的返回结果事件时,可以通过页面栈管理器和预设接口将第二页面的数据回调至第一容器,实现了容器之间的数据通信,而将一个接口注册为某个页面的监听者,不需要单独开发,其应用范围更广,而且实现起来非常便捷,降低了开发成本。
42.实施例二
43.基于上述实施例一所描述的方法,本技术实施例二提供一种数据调用装置,用于执行上述实施例一所描述的方法,参照图5所示,该数据调用装置50包括:
44.注册模块501,用于在第一容器加载第一页面时,如果第一页面需调用第二页面的数据,将第一容器的预设接口在页面栈管理器注册为第二页面的监听者;
45.页面管理模块502,用于页面栈管理器响应于跳转第二页面的请求,跳转到第二页面,利用第二容器加载第二页面;
46.监听模块503,用于在预设接口监听到第二页面的返回结果事件时,利用页面栈管理器将第二页面的数据通过预设接口回调至第一容器;
47.页面管理模块502,还用于利用第一容器及第二页面的数据加载第一页面。
48.可选地,在本技术的一个实施例中,监听模块503,用于页面栈管理器遍历页面生命周期事件监听者,在第二页面发生返回结果事件时,页面栈管理器将第二页面的数据从第二容器,通过预设接口回调至第一容器。
49.可选地,在本技术的一个实施例中,页面管理模块502,用于利用第二容器执行第
二页面的任务逻辑,并根据执行结果得到第二页面的数据。
50.可选地,在本技术的一个实施例中,页面管理模块502,用于利用页面栈管理器的统一跳转接口,从当前页面跳转到第二页面,显示第二页面。
51.可选地,在本技术的一个实施例中,页面管理模块502,用于利用页面栈管理器的统一跳转接口,从第二页面跳转至第一页面;利用第一容器及第二页面的数据加载第一页面,并显示第一页面。
52.可选地,在本技术的一个实施例中,注册模块501,用于将预设接口在页面管理器注册为第二页面的返回结果事件的监听者。
53.本技术实施例提供的数据调用装置,在利用第一容器加载第一页面时,如果第一页面需调用第二页面的数据,通过将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,从而利用预设接口监听第二页面,在监听到第二页面的返回结果事件时,可以通过页面栈管理器和预设接口将第二页面的数据回调至第一容器,实现了容器之间的数据通信,而将一个接口注册为某个页面的监听者,不需要单独开发,其应用范围更广,而且实现起来非常便捷,降低了开发成本。
54.实施例三
55.基于上述实施例一所描述的方法,本技术实施例三提供一种电子设备,用于执行上述实施例一所描述的方法,参照图6所示,图6为本技术实施例三提供的一种电子设备的结构示意图,本技术具体实施例并不对电子设备的具体实现做限定。
56.如图6所示,该电子设备可以包括:处理器(processor)602、通信接口(communications interface)604、存储器(memory)606、以及通信总线608。
57.其中:
58.处理器602、通信接口604、以及存储器606通过通信总线608完成相互间的通信。
59.通信接口604,用于与其它电子设备如终端设备或服务器进行通信。
60.处理器602,用于执行程序610,具体可以执行上述方法实施例中的相关步骤。
61.具体地,程序610可以包括程序代码,该程序代码包括计算机操作指令。
62.处理器602可能是处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
63.存储器606,用于存放程序610。存储器606可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
64.程序610具体可以用于使得处理器602执行前述实施例一中任一方法。
65.程序610中各步骤的具体实现可以参见上述数据调用方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
66.本技术实施例提供的电子设备,在利用第一容器加载第一页面时,如果第一页面需调用第二页面的数据,通过将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,从而利用预设接口监听第二页面,在监听到第二页面的返回结果事件时,可以通过页
面栈管理器和预设接口将第二页面的数据回调至第一容器,实现了容器之间的数据通信,而将一个接口注册为某个页面的监听者,不需要单独开发,其应用范围更广,而且实现起来非常便捷,降低了开发成本。
67.实施例四
68.基于上述实施例一所描述的方法,本技术实施例四提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如实施例一所描述的方法。
69.本技术实施例提供的计算机存储介质,在利用第一容器加载第一页面时,如果第一页面需调用第二页面的数据,通过将第一容器的预设接口在页面栈管理器注册为第二页面的监听者,从而利用预设接口监听第二页面,在监听到第二页面的返回结果事件时,可以通过页面栈管理器和预设接口将第二页面的数据回调至第一容器,实现了容器之间的数据通信,而将一个接口注册为某个页面的监听者,不需要单独开发,其应用范围更广,而且实现起来非常便捷,降低了开发成本。
70.需要指出,根据实施的需要,可将本技术实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本技术实施例的目的。
71.上述根据本技术实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cd rom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的数据调用方法。此外,当通用计算机访问用于实现在此示出的数据调用方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的数据调用方法的专用计算机。
72.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术实施例的范围。
73.以上实施方式仅用于说明本技术实施例,而并非对本技术实施例的限制,有关技术领域的普通技术人员,在不脱离本技术实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本技术实施例的范畴,本技术实施例的专利保护范围应由权利要求限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献