CN111782209A - 页面管理方法、装置、电子设备及计算机存储介质 - Google Patents
页面管理方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN111782209A CN111782209A CN201910273056.7A CN201910273056A CN111782209A CN 111782209 A CN111782209 A CN 111782209A CN 201910273056 A CN201910273056 A CN 201910273056A CN 111782209 A CN111782209 A CN 111782209A
- Authority
- CN
- China
- Prior art keywords
- view
- component
- pages
- page
- management container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 150
- 230000003993 interaction Effects 0.000 claims abstract description 55
- 238000005516 engineering process Methods 0.000 claims abstract description 54
- 230000002452 interceptive effect Effects 0.000 claims abstract description 33
- 230000000712 assembly Effects 0.000 claims abstract description 25
- 238000000429 assembly Methods 0.000 claims abstract description 25
- 238000009877 rendering Methods 0.000 claims abstract description 19
- 238000004891 communication Methods 0.000 claims description 15
- 238000000034 method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 2
- 238000011161 development Methods 0.000 abstract description 26
- 230000006870 function Effects 0.000 description 14
- 230000000694 effects Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000009191 jumping Effects 0.000 description 4
- 230000006378 damage Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供了一种页面管理方法、装置、电子设备及计算机存储介质。其中,所述页面管理方法包括:采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。通过本发明实施例,管理不同技术栈页面的成本更低,使开发效率更高。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种页面管理方法、装置、电子设备及计算机存储介质。
背景技术
随着科技的发展,开发页面的技术栈越来越多,采用不同技术栈开发的页面具有不同的特点。现有的应用程序通常都需要支持采用不同技术栈开发的页面,如原生页面(native页面)、网页页面(web页面)、weex页面、RN页面(react native页面)和flutter页面等。
由于在应用程序中不同技术栈开发的页面需要独立的用于交互的组件承载(如在安卓系统中,需要通过Activity组件承载),而一方面,这些用于交互的组件需要提前在操作系统中进行注册,如在安卓系统中,Activity组件需要在AndroidManifest文件中注册;另一方面,这些用于交互的组件功能都较为复杂、生命周期较多,导致应用程序的页面管理难度增加。例如,若通过这些用于交互的组件承载不同技术栈开发的页面,在需要实现页面间跳转时,只能通过这些用于交互的组件间的跳转实现,而用于交互的组件间跳转时需要进行窗口或屏幕组件的生命周期管理,导致页面管理难度增加。
发明内容
有鉴于此,本发明实施例提供一种页面管理方案,以解决上述的部分或全部问题。
根据本发明实施例的第一方面,提供了一种页面管理方法,包括:采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
根据本发明实施例的第二方面,提供了一种页面管理装置,包括:承载模块,用于采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;容器添加模块,用于将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
根据本发明实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的页面管理方法对应的操作。
根据本发明实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的页面管理方法。
根据本发明实施例提供的页面管理方案,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例一的一种页面管理方法的步骤流程图;
图2为根据本发明实施例二的一种页面管理方法的步骤流程图;
图3为根据本发明实施例三的一种页面管理方法的步骤流程图;
图4为根据本发明实施例四的一种页面管理装置的结构框图;
图5为根据本发明实施例五的一种页面管理装置的结构框图;
图6为根据本发明实施例六的一种电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1,示出了根据本发明实施例一的一种页面管理方法的步骤流程图。
本实施例的页面管理方法包括以下步骤:
步骤S102:采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件。
所述多视图管理容器组件可以承载多个视图组件,并可以对其中的视图组件进行管理,例如,管理所述视图组件的展示位置、可见性等等。所述多视图管理容器组件可以是操作系统原生组件(例如,安卓系统中的ViewPager组件),也可以是自定义组件。
在本实施例中,不同的技术栈页面指通过不同的开发框架开发的页面。例如,使用操作系统的原生语言开发的原生页面(Native页面),使用web语言(如HTML语言)开发的网页页面(web页面),基于weex框架开发的weex页面,基于react native框架开发的RN页面,基于flutter框架开发的flutter页面等。
针对不同的技术栈页面,对其进行渲染所需的视图组件可能相同,也可能不同。例如,在安卓系统中,原生页面可以通过ViewGroup组件和/或View组件进行渲染,网页页面可以通过WebView组件进行渲染,weex页面、RN页面和flutter页面的根节点视图组件均可以是FrameLayout组件。这些组件均是继承自View组件,即这些组件均为视图组件,故而可以采用多视图管理容器组件承载部分或全部的视图组件,并通过多视图管理容器组件对视图组件进行管理。
步骤S104:将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
所述交互组件用于向用户展示内容和/或接收用户的操作,以与用户进行交互,例如,安卓系统中的activity组件、Windows系统中的窗口组件等。
在本实施例中,通过将所述多视图管理容器组件添加到交互组件中,使多视图管理容器能够通过交互组件获取到交互信息(如,用户的操作),并根据交互信息管理其中的视图组件。
例如,当用户进行滑动操作时,多视图管理容器组件通过交互组件获取到所述滑动操作的交互信息,根据所述交互信息管理其承载的所述视图组件中可见的视图组件,从而实现页面切换。
通过本实施例,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
本实施例的页面管理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例二
参照图2,示出了根据本发明实施例二的一种页面管理方法的步骤流程图。
本实施例的页面管理方法包括前述的步骤S102和S104。在本实施例中,所述步骤S102包括以下子步骤:
子步骤S1021:创建所述视图组件对应的承载对象,所述承载对象为具有自定义生命周期的视图类对象。
在本实施例中,为了便于管理技术栈页面的生命周期,满足业务的功能需求,为渲染技术栈页面所需的视图组件创建对应的承载对象,以通过对应的承载对象承载所述视图组件。由于所述承载对象为视图类对象,因此,其可以承载对应的所述视图组件;又由于所述承载对象具有自定义生命周期,因此,本领域技术人员可以根据业务的具体需求自定义所述承载对象的生命周期,以在保证能够满足业务需求的情况下,减少所述承载对象的生命周期数量,从而提升页面管理的简易程度,并降低开发工作量,提升开发效率,使其对开发者更友好。
在一具体实现中,所述承载对象具有view属性,通过配置所述承载对象的view属性,将与其对应的视图组件添加到所述承载对象中。
所述承载对象的自定义生命周期包括下列至少之一:创建、销毁、前台切后台和后台切前台。其中,所述创建用于指示所述承载对象对应的页面被创建。所述销毁用于指示所述承载对象对应的页面被销毁。所述前台切后台用于指示所述承载对象对应的页面被从可见状态切换至不可见状态。所述后台切前台用于指示所述承载对象对应的页面被从不可见状态切换至可见状态。通过前述的这些自定义生命周期可以方便地管理页面和/或根据页面的生命周期信息进行相应的业务处理,以方便实现业务需求。
当然,在其他实施例中,本领域技术人员可以根据业务需求定义前述的生命周期之外的生命周期。
子步骤S1022:将所述承载对象添加到所述多视图管理容器组件中,以通过所述多视图管理容器组件承载所述视图组件。
本领域技术人员可以根据需要采用适当的方式将所述承载对象添加到所述多视图管理容器组件中,本实施例对此不作限定。
例如,在安卓系统中,若多视图管理容器组件为ViewPager组件,则可以通过为多视图管理容器组件配置对应的适配器(如PagerAdapter),利用配置的适配器将承载对象添加到所述多视图管理容器组件中,实现通过所述多视图管理容器组件承载所述视图组件的目的。
ViewPager组件为安卓系统的原生组件,其可以实现多页面间的切换,且支持配置不同的页面切换动画效果,使用其承载不同技术栈页面的视图组件,不仅能够支持不同技术栈页面,而且能够根据业务需求实现多样性的页面切换效果。
当然,在其他操作系统中,可以采用其他能够承载和管理多个视图组件的组件作为多视图管理容器组件,并采用与其匹配的方式将所述承载对象添加到所述多视图管理容器组件中即可。
由上,通过本实施例,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
此外,通过创建与视图组件对应的承载对象,且承载对象具有自定义生命周期,并将承载对象添加到多视图管理容器组件中,使得可以方便地管理承载对象对应的页面的生命周期,满足业务需求。
本实施例的页面管理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例三
参照图3,示出了根据本发明实施例三的一种页面管理方法的步骤流程图。
本实施例的页面管理方法包括前述的步骤S102和S104。
所述步骤S102可以采用前述的实施例一或实施例二中所述的方式实现。
在本实施例中,所述方法还包括:
步骤S106:提供所述承载对象的生命周期接口,以供业务通过所述生命周期接口获取所述承载对象的生命周期信息。
所述承载对象的生命周期接口可以供业务通过所述生命周期接口获取所述承载对象的生命周期信息,进而根据获取的所述生命周期信息实现需要的功能。例如,根据生命周期信息创建对应的监听事件、配置对应的业务功能。
通过本实施例,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
此外,通过提供生命周期接口,使业务能够方便地获取生命周期信息,进而可以方便地根据生命周期信息配置需要的业务功能,使业务开发更加方便,可以提升开发效率。
本实施例的页面管理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例四
参照图4,示出了根据本发明实施例四的一种页面管理装置的结构框图。
本实施例的页面管理装置包括承载模块402和容器添加模块404。
所述承载模块402,用于采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件。
所述多视图管理容器组件可以承载多个视图组件,并可以对其中的视图组件进行管理,例如,管理所述视图组件的展示位置、可见性等等。所述多视图管理容器组件可以是操作系统原生组件(例如,安卓系统中的ViewPager组件),也可以是自定义组件。
在本实施例中,不同的技术栈页面指通过不同的开发框架开发的页面。例如,使用操作系统的原生语言开发的原生页面(Native页面),使用web语言(如HTML语言)开发的网页页面(web页面),基于weex框架开发的weex页面,基于react native框架开发的RN页面,基于flutter框架开发的flutter页面等。
针对不同的技术栈页面,对其进行渲染所需的视图组件可能相同,也可能不同。例如,在安卓系统中,原生页面可以通过ViewGroup组件和/或View组件进行渲染,网页页面可以通过WebView组件进行渲染,weex页面、RN页面和flutter页面的根节点视图组件均可以是FrameLayout组件。这些组件均是继承自View组件,即这些组件均为视图组件,故而可以采用多视图管理容器组件承载部分或全部的视图组件,并通过多视图管理容器组件对视图组件进行管理。
所述容器添加模块404,用于将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
所述交互组件用于向用户展示内容和/或接收用户的操作,以与用户进行交互,例如,安卓系统中的activity组件、Windows系统中的窗口组件等。
在本实施例中,通过将所述多视图管理容器组件添加到交互组件中,使多视图管理容器能够通过交互组件获取到交互信息(如,用户的操作),并根据交互信息管理其中的视图组件。
例如,当用户进行滑动操作时,多视图管理容器组件通过交互组件获取到所述滑动操作的交互信息,根据所述交互信息管理其承载的所述视图组件中可见的视图组件,从而实现页面切换。
通过本实施例,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
实施例五
参照图5,示出了根据本发明实施例五的一种页面管理装置的结构框图。
本实施例的页面管理装置包括前述的承载模块402和容器添加模块404。
可选地,所述承载模块402包括创建模块4021和对象添加模块4022。
其中,所述创建模块4021,用于创建所述视图组件对应的承载对象,所述承载对象为具有自定义生命周期的视图类对象。
在本实施例中,为了便于管理技术栈页面的生命周期,满足业务的功能需求,为渲染技术栈页面所需的视图组件创建对应的承载对象,以通过对应的承载对象承载所述视图组件。由于所述承载对象为视图类对象,因此,其可以承载对应的所述视图组件;又由于所述承载对象具有自定义生命周期,因此,本领域技术人员可以根据业务的具体需求自定义所述承载对象的生命周期,以在保证能够满足业务需求的情况下,减少所述承载对象的生命周期数量,从而提升页面管理的简易程度,并降低开发工作量,提升开发效率,使其对开发者更友好。
在一具体实现中,所述承载对象具有view属性,通过配置所述承载对象的view属性,将与其对应的视图组件添加到所述承载对象中。
所述承载对象的自定义生命周期包括下列至少之一:创建、销毁、前台切后台和后台切前台。其中,所述创建用于指示所述承载对象对应的页面被创建。所述销毁用于指示所述承载对象对应的页面被销毁。所述前台切后台用于指示所述承载对象对应的页面被从可见状态切换至不可见状态。所述后台切前台用于指示所述承载对象对应的页面被从不可见状态切换至可见状态。通过前述的这些自定义生命周期可以方便地管理页面和/或根据页面的生命周期信息进行相应的业务处理,以方便实现业务需求。
当然,在其他实施例中,本领域技术人员可以根据业务需求定义前述的生命周期之外的生命周期。
所述对象添加模块4022,用于将所述承载对象添加到所述多视图管理容器组件中,以通过所述多视图管理容器组件承载所述视图组件。
本领域技术人员可以根据需要采用适当的方式将所述承载对象添加到所述多视图管理容器组件中,本实施例对此不作限定。
例如,在安卓系统中,若多视图管理容器组件为ViewPager组件,则可以通过为多视图管理容器组件配置对应的适配器(如PagerAdapter),利用配置的适配器将承载对象添加到所述多视图管理容器组件中,实现通过所述多视图管理容器组件承载所述视图组件的目的。
ViewPager组件为安卓系统的原生组件,其可以实现多页面间的切换,且支持配置不同的页面切换动画效果,使用其承载不同技术栈页面的视图组件,不仅能够支持不同技术栈页面,而且能够根据业务需求实现多样性的页面切换效果。
当然,在其他操作系统中,可以采用其他能够承载和管理多个视图组件的组件作为多视图管理容器组件,并采用与其匹配的方式将所述承载对象添加到所述多视图管理容器组件中即可。
可选地,所述装置还包括提供模块406,用于提供所述承载对象的生命周期接口,以供业务通过所述生命周期接口获取所述承载对象的生命周期信息。
所述承载对象的生命周期接口可以供业务通过所述生命周期接口获取所述承载对象的生命周期信息,进而根据获取的所述生命周期信息实现需要的功能。例如,根据生命周期信息创建对应的监听事件、配置对应的业务功能。
可选地,所述技术栈页面包括下列至少之一:原生页面、网页页面、基于weex框架的weex页面、基于react native框架的RN页面和基于flutter框架的flutter页面。当然,技术栈页面并不限于此,其还可以是任何技术栈开发的页面。
由上,通过本实施例,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
通过创建与视图组件对应的承载对象,且承载对象具有自定义生命周期,并将承载对象添加到多视图管理容器组件中,使得可以方便地管理承载对象对应的页面的生命周期,满足业务需求。
通过提供生命周期接口,使业务能够方便地获取生命周期信息,进而可以方便地根据生命周期信息配置需要的业务功能,使业务开发更加方便,可以提升开发效率。
实施例六
参照图6,示出了根据本发明实施例六的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图6所示,该电子设备可以包括:处理器(processor)602、通信接口(Communications Interface)604、存储器(memory)606、以及通信总线608。
其中:
处理器602、通信接口604、以及存储器606通过通信总线608完成相互间的通信。
通信接口604,用于与其它电子设备如终端设备或服务器进行通信。
处理器602,用于执行程序610,具体可以执行上述页面管理方法实施例中的相关步骤。
具体地,程序610可以包括程序代码,该程序代码包括计算机操作指令。
处理器602可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器606,用于存放程序610。存储器606可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序610具体可以用于使得处理器602执行以下操作:采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
在一种可选的实施方式中,程序610还用于使得处理器602在采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件时,创建所述视图组件对应的承载对象,所述承载对象为具有自定义生命周期的视图类对象;将所述承载对象添加到所述多视图管理容器组件中,以通过所述多视图管理容器组件承载所述视图组件。
在一种可选的实施方式中,程序610还用于使得处理器602提供所述承载对象的生命周期接口,以供业务通过所述生命周期接口获取所述承载对象的生命周期信息。
在一种可选的实施方式中,所述自定义生命周期包括下列至少之一:创建、销毁、前台切后台和后台切前台。
在一种可选的实施方式中,所述技术栈页面包括下列至少之一:原生页面、网页页面、基于weex框架的weex页面、基于react native框架的RN页面和基于flutter框架的flutter页面。
程序610中各步骤的具体实现可以参见上述页面管理方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例的电子设备,利用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。这样利用多视图管理容器组件承载多个不同的技术栈页面,从而无需创建大量的交互组件,避免了采用大量交互组件承载不同的技术栈页面存在的页面管理难度大的问题,而且由于可以使用少量的交互组件实现相同的功能,因此可以减少开发量,提升开发效率。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的页面管理方法。此外,当通用计算机访问用于实现在此示出的页面管理方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的页面管理方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。
Claims (12)
1.一种页面管理方法,其特征在于,包括:
采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;
将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
2.根据权利要求1所述的方法,其特征在于,所述采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件,包括:
创建所述视图组件对应的承载对象,所述承载对象为具有自定义生命周期的视图类对象;
将所述承载对象添加到所述多视图管理容器组件中,以通过所述多视图管理容器组件承载所述视图组件。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
提供所述承载对象的生命周期接口,以供业务通过所述生命周期接口获取所述承载对象的生命周期信息。
4.根据权利要求2所述的方法,其特征在于,所述自定义生命周期包括下列至少之一:创建、销毁、前台切后台和后台切前台。
5.根据权利要求1所述的方法,其特征在于,所述技术栈页面包括下列至少之一:原生页面、网页页面、基于weex框架的weex页面、基于react native框架的RN页面和基于flutter框架的flutter页面。
6.一种页面管理装置,其特征在于,包括:
承载模块,用于采用多视图管理容器组件承载对不同的技术栈页面进行渲染所需的视图组件;
容器添加模块,用于将所述多视图管理容器组件添加到交互组件,以根据所述交互组件获取到的交互信息管理所述多视图管理容器组件中的视图组件。
7.根据权利要求6所述的装置,其特征在于,所述承载模块包括:
创建模块,用于创建所述视图组件对应的承载对象,所述承载对象为具有自定义生命周期的视图类对象;
对象添加模块,用于将所述承载对象添加到所述多视图管理容器组件中,以通过所述多视图管理容器组件承载所述视图组件。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
提供模块,用于提供所述承载对象的生命周期接口,以供业务通过所述生命周期接口获取所述承载对象的生命周期信息。
9.根据权利要求7所述的装置,其特征在于,所述自定义生命周期包括下列至少之一:创建、销毁、前台切后台和后台切前台。
10.根据权利要求6所述的装置,其特征在于,所述技术栈页面包括下列至少之一:原生页面、网页页面、基于weex框架的weex页面、基于react native框架的RN页面和基于flutter框架的flutter页面。
11.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-5中任一项所述的页面管理方法对应的操作。
12.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-5中任一所述的页面管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910273056.7A CN111782209A (zh) | 2019-04-04 | 2019-04-04 | 页面管理方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910273056.7A CN111782209A (zh) | 2019-04-04 | 2019-04-04 | 页面管理方法、装置、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111782209A true CN111782209A (zh) | 2020-10-16 |
Family
ID=72755655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910273056.7A Pending CN111782209A (zh) | 2019-04-04 | 2019-04-04 | 页面管理方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111782209A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286607A (zh) * | 2020-10-27 | 2021-01-29 | 北京奇艺世纪科技有限公司 | 一种视图控制方法及装置 |
CN112463518A (zh) * | 2020-11-05 | 2021-03-09 | 广州博恒信息科技有限责任公司 | 基于Flutter的页面全生命周期监控方法、装置、设备及存储介质 |
CN112486802A (zh) * | 2020-11-11 | 2021-03-12 | 贝壳技术有限公司 | Flutter测试辅助方法及装置 |
CN113076209A (zh) * | 2021-06-08 | 2021-07-06 | 贝壳技术有限公司 | 通信方法、装置、电子设备及存储介质 |
CN114625444A (zh) * | 2022-03-30 | 2022-06-14 | 北京有竹居网络技术有限公司 | 一种基于组件的数据处理方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020121521A1 (en) * | 2001-03-05 | 2002-09-05 | Dell Products L.P. | Reusable container management system and method |
CN103970526A (zh) * | 2013-11-21 | 2014-08-06 | 成都力淼科技有限公司 | 一种基于Android单Activity的视图切换技术 |
CN105630461A (zh) * | 2014-10-27 | 2016-06-01 | 航天信息股份有限公司 | 一种android应用界面的管理方法 |
CN106775637A (zh) * | 2016-11-18 | 2017-05-31 | 腾讯音乐娱乐(深圳)有限公司 | 一种应用程序的页面显示方法和装置 |
US20180004715A1 (en) * | 2016-07-01 | 2018-01-04 | Facebook, Inc. | Optimizing view hierarchy by automatically removing layout-only views |
CN109426513A (zh) * | 2017-08-23 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种视图组件的处理方法及设备 |
-
2019
- 2019-04-04 CN CN201910273056.7A patent/CN111782209A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020121521A1 (en) * | 2001-03-05 | 2002-09-05 | Dell Products L.P. | Reusable container management system and method |
CN103970526A (zh) * | 2013-11-21 | 2014-08-06 | 成都力淼科技有限公司 | 一种基于Android单Activity的视图切换技术 |
CN105630461A (zh) * | 2014-10-27 | 2016-06-01 | 航天信息股份有限公司 | 一种android应用界面的管理方法 |
US20180004715A1 (en) * | 2016-07-01 | 2018-01-04 | Facebook, Inc. | Optimizing view hierarchy by automatically removing layout-only views |
CN106775637A (zh) * | 2016-11-18 | 2017-05-31 | 腾讯音乐娱乐(深圳)有限公司 | 一种应用程序的页面显示方法和装置 |
CN109426513A (zh) * | 2017-08-23 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 一种视图组件的处理方法及设备 |
Non-Patent Citations (2)
Title |
---|
刘一田;刘士进;: "可视化Web设计器", 计算机系统应用, no. 10 * |
朱汇龙;刘晓燕;: "IFML在Web开发中的应用", 软件导刊, no. 11 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286607A (zh) * | 2020-10-27 | 2021-01-29 | 北京奇艺世纪科技有限公司 | 一种视图控制方法及装置 |
CN112286607B (zh) * | 2020-10-27 | 2023-09-08 | 北京奇艺世纪科技有限公司 | 一种视图控制方法及装置 |
CN112463518A (zh) * | 2020-11-05 | 2021-03-09 | 广州博恒信息科技有限责任公司 | 基于Flutter的页面全生命周期监控方法、装置、设备及存储介质 |
CN112486802A (zh) * | 2020-11-11 | 2021-03-12 | 贝壳技术有限公司 | Flutter测试辅助方法及装置 |
CN113076209A (zh) * | 2021-06-08 | 2021-07-06 | 贝壳技术有限公司 | 通信方法、装置、电子设备及存储介质 |
CN113076209B (zh) * | 2021-06-08 | 2021-08-17 | 贝壳技术有限公司 | 通信方法、装置、电子设备及存储介质 |
CN114625444A (zh) * | 2022-03-30 | 2022-06-14 | 北京有竹居网络技术有限公司 | 一种基于组件的数据处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111782209A (zh) | 页面管理方法、装置、电子设备及计算机存储介质 | |
US20180101371A1 (en) | Deployment manager | |
US10089152B1 (en) | Using scripts to bootstrap applications with metadata from a template | |
CN105095103A (zh) | 用于云环境下的存储设备管理方法和装置 | |
US9760441B2 (en) | Restoration of consistent regions within a streaming environment | |
CN104978180A (zh) | 一种未处理事件的提示方法、装置及移动终端 | |
CN111414391A (zh) | 一种访问多数据源的方法及系统 | |
CN108733370B (zh) | 原生app的样式化显示方法、装置、终端及存储介质 | |
CN102043645A (zh) | 一种加载插件的方法及装置 | |
CN109522021B (zh) | 参数回调处理方法、装置、电子设备及存储介质 | |
US20150280996A1 (en) | Cloud topology visualizations | |
CN113407254B (zh) | 表单生成方法、装置、电子设备及存储介质 | |
CN111124437A (zh) | 一种基于OpenStack的裸机资源配置信息获取方法、系统及设备 | |
CN111782210A (zh) | 页面管理方法、装置、电子设备及计算机可读介质 | |
CN110807162A (zh) | 加载占位图的方法和装置 | |
CN115729604A (zh) | 微应用集成方法、系统、电子设备和存储介质 | |
US9787552B2 (en) | Operation process creation program, operation process creation method, and information processing device | |
CN114679491A (zh) | 微前端服务应用方法、装置、存储介质及电子设备 | |
WO2017096889A1 (zh) | 系统升降级的方法和装置 | |
CN113835835A (zh) | 一种创建一致性组的方法、装置、及计算机可读存储介质 | |
CN113296878A (zh) | 一种容器处理方法、装置、电子设备及系统 | |
CN111399942A (zh) | 网卡配置方法、网卡配置装置、网卡配置设备及存储介质 | |
CN110908644A (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN105094773A (zh) | 模块功能的重用方法及系统 | |
KR101553539B1 (ko) | 동적 링크 제공 방법 및 이를 수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |