本申请实施例提供的列表实现方法、装置、电子设备和可读存储介质,涉及计算机技术领域,通过前端将获取的待创建列表的基本参数传递给原生端,在原生端根据获得的基本参数创建对应的列表组件,并基于列表组件执行列表项的加载和复用。如此,通过原生端实现列表项的加载和复用,基于原生端代码执行的高效性,可提高列表项加载和复用的执行效率,并且,前端仅将基本参数传递给原生端,避免了直接将业务数据传递给原生端所存在的前端和原生端之间数据交换量大的问题。
List implementation method, device, electronic device and readable storage medium
【技术实现步骤摘要】
列表实现方法、装置、电子设备和可读存储介质
本申请涉及计算机
,具体而言,涉及一种列表实现方法、装置、电子设备和可读存储介质。
技术介绍
目前的很多应用程序会采用混合模型进行开发,即采用前端技术和原生端(Native端)技术进行混合开发。其中,前端技术是指基于如JavaScript、html、css等技术开发网页和webapp。原生端技术是指基于电子设备的本地操作系统的原生功能编写程序,如Android、IOS等系统原生界面进行开发。列表视图作为应用程序中最常见的一种展示形式,用于在页面中展示多项相同或相似结构的列表项。列表项在页面中可上下、左右滚动,由于页面展示内容容量有限,列表项在滚动的过程中,有些列表项将从页面中移出,一些列表项将移入列表项中。这个过程中就涉及到列表项的创建以及渲染显示的工作。若创建及渲染显示处理不及时,则滚动列表项的过程中可能出现白屏或卡顿的现象。目前,对于列表视图实现上的优化方案中,常见的方式是,集中在前端进行优化,在前端利用一定的算法进行列表项的复用,从而降低列表项的创建量,另一种是将业务数据发往原生端,在原生端进行复用优化。第一种方式中,由于前端代码为动态代码,在执行效率上远远低于原生端代码的执行效率,在数据量较大的情况下,仍然容易导致白屏或卡顿。第二种方式中,需要将业务数据传递给原生端,数据量大,增大了前端和原生端之间数据交换的时间损耗。
技术实现思路
本申请的目的包括,例如,提供了一种列表实现方法、装置、电子设备和可读存储介质,以改善上述问题。本申请的实施例可以这样实现:第一方面,实施例提供一种列表实现方法,应用于电子设备,所述电子设备安装有基于所述电子设备的前端和原生端开发的应用程序,所述方法包括:通过所述前端将获取的待创建列表的基本参数传递给所述原生端;在所述原生端根据所述基本参数创建对应的列表组件,基于所述列表组件执行列表项的加载及复用。在可选的实施方式中,所述方法还包括:在所述前端获取所述原生端当前所加载的列表项对应的列表数据;将所述列表数据填入至所述加载的列表项,并渲染显示在显示界面。在可选的实施方式中,所述在所述前端获取所述原生端当前所加载的列表项对应的列表数据的步骤,包括:通过所述原生端将当前加载的列表项的标识信息传递至所述前端;在所述前端从预存的多个列表数据中,获得与所述标识信息对应的列表数据。在可选的实施方式中,所述基于所述列表组件执行列表项的加载及复用的步骤,包括:在需要创建待移入列表项时,检测预先建立的资源池中是否具有与所述待移入列表项对应的可供复用的列表项,其中,所述待移入列表项为待移入所述显示界面的列表项;若具有可供复用的列表项,则从所述可供复用的列表项中获取复用列表项,并加载所述复用列表项。在可选的实施方式中,在所述原生端当前所加载的列表项为所述复用列表项时,所述通过所述原生端将当前加载的列表项的标识信息传递至所述前端的步骤,包括:通过所述原生端将当前加载的复用列表项的标识信息更新为所述待移入列表项的标识信息,并将更新后的标识信息传递至所述前端。在可选的实施方式中,所述基于所述列表组件执行列表项的加载及复用的步骤还包括:在所述资源池中不具有可供复用的列表项时,基于所述列表组件创建所述待移入列表项,并加载创建的待移入列表项。在可选的实施方式中,所述基于所述列表组件创建所述待移入列表项,并加载创建的待移入列表项的步骤,包括:基于所述列表组件创建所述待移入列表项;将创建的待移入列表项添加至所述原生端的根视图;基于所述待移入列表项在所述根视图运行加载所述待移入列表项对应的组件信息。在可选的实施方式中,所述检测预先建立的资源池中是否具有与所述待移入列表项对应的可供复用的列表项的步骤,包括:获得所述待移入列表项的列表类型;检测预先建立的资源池中是否存在具有所述列表类型的列表项;若存在,则将所述资源池中具有所述列表类型的列表项确定为所述可供复用的列表项。在可选的实施方式中,所述基于所述列表组件执行列表项的加载及复用的步骤,还包括:当存在移出所述显示界面的列表数据时,获得该列表数据对应的列表项;将获得的列表项添加至预先建立的资源池中。在可选的实施方式中,所述通过所述前端将获取的待创建列表的基本参数传递给所述原生端的步骤,包括:通过所述前端将获取的待创建列表的行数、列数、包含的列表项的类型,按预设格式进行封装生成数据包;将所述数据包传递给所述原生端。第二方面,实施例提供一种列表实现装置,应用于电子设备,所述电子设备安装有基于所述电子设备的前端和原生端开发的应用程序,所述装置包括:传递模块,用于通过所述前端将获取的待创建列表的基本参数传递给所述原生端;复用模块,用于在所述原生端根据所述基本参数创建对应的列表组件,基于所述列表组件执行列表项的加载及复用。第三方面,实施例提供一种电子设备,所述电子设备包括机器可读存储介质及处理器,所述机器可读存储介质存储有机器可执行指令,所述处理器在执行所述机器可执行指令时,该电子设备实现前述实施方式中任意一项所述的列表实现方法。第四方面,实施例提供一种可读存储介质,所述可读存储介质中存储有机器可执行指令,所述机器可执行指令被执行时实现前述实施方式中任意一项所述的列表实现方法。本申请实施例的有益效果包括,例如:本申请实施例提供的列表实现方法、装置、电子设备和可读存储介质,通过前端将获取的待创建列表的基本参数传递给原生端,在原生端根据获得的基本参数创建对应的列表组件,并基于列表组件执行列表项的加载和复用。如此,通过原生端实现列表项的加载和复用,基于原生端代码执行的高效性,可提高列表项加载和复用的执行效率,并且,前端仅将基本参数传递给原生端,避免了直接将业务数据传递给原生端所存在的前端和原生端之间数据交换量大的问题。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的电子设备的结构示意图;图2为本申请实施例提供的列表实现方法的流程图;图3为本申请实施例提供的前端和原生端的交互示意图;图4为本申请实施例提供的前端和原生端的交互流程示意图;图5为本申请实施例提供的列表实现方法的另一流程图;图6为图2中步骤S220的子步骤的流程图;图7为本申请实施例提供的显示界面显示效果示意图;图8为本申请实施例提供的显示界面显示效果的另一示意图;图9为本申请实施例提供的显示界面显示效果的另一示意图;图10为本申请实施例提供的列表本文档来自技高网...
【技术保护点】
1.一种列表实现方法,其特征在于,应用于电子设备,所述电子设备安装有基于所述电子设备的前端和原生端开发的应用程序,所述方法包括:/n通过所述前端将获取的待创建列表的基本参数传递给所述原生端;/n在所述原生端根据所述基本参数创建对应的列表组件,基于所述列表组件执行列表项的加载及复用。/n
【技术特征摘要】
1.一种列表实现方法,其特征在于,应用于电子设备,所述电子设备安装有基于所述电子设备的前端和原生端开发的应用程序,所述方法包括:
通过所述前端将获取的待创建列表的基本参数传递给所述原生端;
在所述原生端根据所述基本参数创建对应的列表组件,基于所述列表组件执行列表项的加载及复用。
2.根据权利要求1所述的列表实现方法,其特征在于,所述方法还包括:
在所述前端获取所述原生端当前所加载的列表项对应的列表数据;
将所述列表数据填入至所述加载的列表项,并渲染显示在显示界面。
3.根据权利要求2所述的列表实现方法,其特征在于,所述在所述前端获取所述原生端当前所加载的列表项对应的列表数据的步骤,包括:
通过所述原生端将当前加载的列表项的标识信息传递至所述前端;
在所述前端从预存的多个列表数据中,获得与所述标识信息对应的列表数据。
4.根据权利要求3所述的列表实现方法,其特征在于,所述基于所述列表组件执行列表项的加载及复用的步骤,包括:
在需要创建待移入列表项时,检测预先建立的资源池中是否具有与所述待移入列表项对应的可供复用的列表项,其中,所述待移入列表项为待移入所述显示界面的列表项;
若具有可供复用的列表项,则从所述可供复用的列表项中获取复用列表项,并加载所述复用列表项。
5.根据权利要求4所述的列表实现方法,其特征在于,在所述原生端当前所加载的列表项为所述复用列表项时,所述通过所述原生端将当前加载的列表项的标识信息传递至所述前端的步骤,包括:
通过所述原生端将当前加载的复用列表项的标识信息更新为所述待移入列表项的标识信息,并将更新后的标识信息传递至所述前端。
6.根据权利要求4所述的列表实现方法,其特征在于,所述基于所述列表组件执行列表项的加载及复用的步骤还包括:
在所述资源池中不具有可供复用的列表项时,基于所述列表组件创建所述待移入列表项,并加载创建的待移入列表项。
7.根据权利要求6所述的列表实现方法,其特征在于,所述基于所述列表组件创建所述待移入列表项,并加载...
【专利技术属性】
技术研发人员:丁海盛,王钰,
申请(专利权)人:广州虎牙科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。