CN114911555A - 页面显示方法、装置、电子设备及存储介质 - Google Patents

页面显示方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114911555A
CN114911555A CN202210408814.3A CN202210408814A CN114911555A CN 114911555 A CN114911555 A CN 114911555A CN 202210408814 A CN202210408814 A CN 202210408814A CN 114911555 A CN114911555 A CN 114911555A
Authority
CN
China
Prior art keywords
page
target
applet
node tree
information
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
Application number
CN202210408814.3A
Other languages
English (en)
Inventor
朱陶然
刘华
肖燕
王志宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN202210408814.3A priority Critical patent/CN114911555A/zh
Publication of CN114911555A publication Critical patent/CN114911555A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

本公开的实施例提供了一种页面显示方法、装置、电子设备及存储介质。所述方法包括:在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。本公开的实施例可以缩短小程序的首页面的显示时间,提升小程序的启动速度。

Description

页面显示方法、装置、电子设备及存储介质
技术领域
本公开的实施例涉及页面显示技术领域,尤其涉及一种页面显示方法、装置、电子设备及存储介质。
背景技术
随着科学技术的不断发展,小程序的应用也越来越广泛,小程序是一种不需要下载安装即可使用的应用,它实现了应用"触手可及"的梦想,用户扫一扫或搜一下即可打开应用。
目前,通常应用的小程序的架构分为逻辑层和视图层两个部分,逻辑层负责执行业务逻辑,视图层根据逻辑层执行后的结果渲染出页面内容。相比与传统的WEB开发和客户端开发,小程序的整体启动流程依赖多,链路长。为了解决首屏性能问题,各大厂小程序平台均有骨架屏方案,部分平台还有初始渲染缓存等方案。
现有技术架构下视图的渲染依赖逻辑层业务代码的执行,非常容易造成业务性能瓶颈,这是导致小程序性能普遍偏低,用户视角下“打开慢,体验不好”的重要原因之一。而初始渲染缓存方案是通过在启动过程中保存上次逻辑层执行输出的数据,二次启动直接复用缓存数据来达到提速的目的,但还是没有从根本解决渲染慢,启动链路长,导致小程序首页面显示时间较长,小程序启动速度慢的问题。
发明内容
本公开的实施例提供一种页面显示方法、装置、电子设备及存储介质,用以缩短小程序首页面的显示时间,提升小程序的启动速度。
根据本公开的实施例的第一方面,提供了一种页面显示方法,包括:
在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
可选地,在所述获取所述目标小程序对应的目标页面加载模板之前,还包括:
获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序;
基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树;
基于所述虚拟节点树,生成所述小程序对应的页面加载模板。
可选地,所述基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树,包括:
根据所述源代码信息,构建所述首页面对应的真实节点树;
编译得到所述页面布局信息对应的虚拟代码信息;
基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
可选地,所述基于所述虚拟节点树,生成所述小程序对应的页面加载模板,包括:
遍历所述虚拟节点树,生成所述小程序对应的页面加载模板。
可选地,在所述基于所述目标页面加载模板,渲染显示所述目标小程序的首页面之后,还包括:
接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息;
基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件;
基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
根据本公开的实施例的第二方面,提供了一种页面显示装置,包括:
目标模板获取模块,用于在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
目标首页面显示模块,用于在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
可选地,所述装置还包括:
页面布局信息获取模块,用于获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序;
虚拟节点树生成模块,用于基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树;
页面加载模板生成模块,用于基于所述虚拟节点树,生成所述小程序对应的页面加载模板。
可选地,所述虚拟节点树生成模块包括:
真实节点树构建单元,用于根据所述源代码信息,构建所述首页面对应的真实节点树;
虚拟代码信息编译单元,用于编译得到所述页面布局信息对应的虚拟代码信息;
虚拟节点树生成单元,用于基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
可选地,所述页面加载模板生成模块包括:
页面加载模板生成单元,用于遍历所述虚拟节点树,生成所述小程序对应的页面加载模板。
可选地,所述装置还包括:
目标页面信息接收模块,用于接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息;
页面差异组件确定模块,用于基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件;
代码信息替换模块,用于基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
根据本公开的实施例的第三方面,提供了一种电子设备,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项所述的页面显示方法。
根据本公开的实施例的第三方面,提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一项所述的页面显示方法。
本公开的实施例提供了一种页面显示方法、装置、电子设备及存储介质。通过在接收到针对目标小程序的启动操作之后,获取目标小程序对应的目标页面加载模板,在目标小程序的视图层启动之前,基于目标页面加载模板,渲染显示目标小程序的目标首页面。本公开的实施例根据预先生成的小程序的页面加载模板,可以在小程序的视图层启动之前渲染显示小程序的首页面,从而可以缩短小程序的首页面的显示时间,提升了小程序的启动速度。
附图说明
为了更清楚地说明本公开的实施例的技术方案,下面将对本公开的实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开的实施例提供的一种页面显示方法的步骤流程图;
图2为本公开的实施例提供的另一种页面显示方法的步骤流程图;
图3为本公开的实施例提供的一种页面加载模板生成流程的示意图;
图4为本公开的实施例提供的一种页面显示装置的结构示意图;
图5为本公开的实施例提供的另一种页面显示装置的结构示意图。
具体实施方式
下面将结合本公开的实施例中的附图,对本公开的实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开的实施例一部分实施例,而不是全部的实施例。基于本公开的实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开的实施例保护的范围。
实施例一
参照图1,示出了本公开的实施例提供的一种页面显示方法的步骤流程图,如图1所示,该页面显示方法可以包括以下步骤:
步骤101:在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板。
本公开的实施例可以应用于根据目标小程序的目标页面加载模板快速显示首页面的场景中。
目标小程序是指用户启动的小程序,在本示例中,目标小程序可以为游戏类小程序、资讯类小程序等,具体地,对于目标小程序的应用类型可以根据使用需求而定,本实施例对此不加以限制。
目标页面加载模板是指预先生成的用于加载目标小程序的首页面的模板,对于不同小程序的页面加载模板的生成过程将在下述实施例二中进行详细描述,本实施例在此不加以限制。
启动操作是指用户对目标小程序执行的用于启动目标小程序的操作,在本示例中,启动操作可以为用户点击目标小程序的图标所触发的操作,也可以为用户输入的用于启动目标小程序的语音所形成的输入等,具体地,对于启动操作的具体触发形式可以根据使用需求而定,本实施例对此不加以限制。
在系统中可以预先存储不同小程序所对应的页面加载模板,在接收到针对目标小程序的启动操作之后,可以获取该目标小程序对应的目标页面加载模板。
在获取到目标小程序对应的目标页面加载模板之后,执行步骤102。
步骤102:在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
目标首页面是指目标小程序的首页面,即在目标小程序启动之后首次显示的页面。
在获取到目标小程序对应的目标页面加载模板之后,可以在目标小程序的视图层启动之前,基于目标页面加载模板渲染显示目标小程序的目标首页面。具体地,目标小程序可以包括视图层和逻辑层,其中,逻辑层负责执行业务逻辑,视图层根据逻辑层执行后的结果渲染出页面内容,在启动目标小程序之后,逻辑层即开始执行业务逻辑,此时,视图层等待逻辑层的执行结果,本实施例可以在视图层启动之前即通过目标页面加载模板渲染显示目标小程序的目标首页面,可以减少等待逻辑层的业务逻辑执行时间,从而缩短了小程序的首页面的显示时间,提升了小程序的启动速度。
本公开的实施例提供的页面显示方法,通过在接收到针对目标小程序的启动操作之后,获取目标小程序对应的目标页面加载模板,在目标小程序的视图层启动之前,基于目标页面加载模板,渲染显示目标小程序的目标首页面。本公开的实施例根据预先生成的小程序的页面加载模板,可以在小程序的视图层启动之前渲染显示小程序的首页面,从而可以缩短小程序的首页面的显示时间,提升了小程序的启动速度。
实施例二
参照图2,示出了本公开的实施例提供的一种页面显示方法的步骤流程图,如图2所示,该页面显示方法可以包括以下步骤:
步骤201:获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序。
本公开的实施例可以应用于根据目标小程序的目标页面加载模板快速显示首页面的场景中。
在本示例中,首先可以生成小程序的页面加载模板,小程序包含下述步骤中提及的目标小程序,对于小程序的数量可以根据业务需求而定,本实施例对此不加以限制。
页面源代码信息是指小程序的首页面对应的源代码信息,在具体实现中,不同的网页页面均是通过代码编译形成的,该首页面对应的编译代码即为页面源代码信息。
页面布局信息是指小程序的首页面内的各种组件的布局,在不同的应用页面内可以包含多个组件,如文本组件、触控组件等,不同页面内包含的组件不同,且组件的分布不同,每个组件在页面内的位置、大小排布等信息,即构成了页面布局信息。
在生成小程序的页面加载模板时,可以获取小程序的首页面的页面源代码信息,及首页面内显示的页面布局信息。
在获取到小程序的首页面的页面源代码信息以及首页面内显示的页面布局信息之后,执行步骤202。
步骤202:基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树。
在获取到小程序的首页面的页面源代码信息以及首页面内显示的页面布局信息之后,可以基于源代码信息和页面布局信息生成小程序的首页面对应的虚拟节点树,该虚拟节点树是采用虚拟代码信息和真实节点树共同生成的,具体地生成过程可以结合下述具体实现方式进行详细描述。
在本公开的一种具体实现方式中,上述步骤202可以包括:
子步骤S1:根据所述源代码信息,构建所述首页面对应的真实节点树。
在本实施例中,在获取到小程序的首页面的源代码信息之后,可以根据源代码信息构建首页面对应的真实节点树。
在根据源代码信息构建得到首页面对应的真实节点树之后,执行子步骤S2。
子步骤S2:编译得到所述页面布局信息对应的虚拟代码信息。
虚拟代码信息是指根据首页面的页面布局信息编译的虚拟代码。
在获取到小程序的首页面的页面布局信息之后,可以编译得到该页面布局信息对应的虚拟代码信息。
在编译得到小程序的首页面的页面布局信息对应的虚拟代码信息之后,执行子步骤S3。
子步骤S3:基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
在通过上述步骤得到虚拟代码信息和真实节点树之后,及可以根据虚拟代码信息和真实节点树生成小程序的首页面对应的虚拟节点树。
在基于源代码信息和页面布局信息生成首页面对应的虚拟节点树之后,执行步骤203。
步骤203:基于所述虚拟节点树,生成所述小程序对应的页面加载模板。
在基于源代码信息和页面布局信息生成首页面对应的虚拟节点树之后,可以基于虚拟节点树生成小程序对应的页面加载模板,具体地,可以对虚拟节点树进行遍历,并根据遍历结果生成小程序对应的页面加载模板。
对于页面加载模板的生成过程可以如图3所示,图中从左至右为算法转换的整体流程。业务小程序源代码分为App、Page、Component三个级别,从App到Component为逐级包含关系,通过静态编译,可以抽离页面和组件在执行时的初始数据和页面xml模板,生成新的渲染函数,其支持多种JavaScript运行时缓存执行(包括但不限于JSCore,NodeJS,Worker,WebView),生成页面的虚拟DOM树。通过对虚拟DOM树的遍历,可生成启动加速模板(即页面加载模板)。
在基于虚拟节点树生成小程序对应的页面加载模板之后,执行步骤204。
步骤204:在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板。
目标小程序是指用户启动的小程序,在本示例中,目标小程序可以为游戏类小程序、资讯类小程序等,具体地,对于目标小程序的应用类型可以根据使用需求而定,本实施例对此不加以限制。
目标页面加载模板是指预先生成的用于加载目标小程序的首页面的模板,对于不同小程序的页面加载模板的生成过程将在下述实施例二中进行详细描述,本实施例在此不加以限制。
启动操作是指用户对目标小程序执行的用于启动目标小程序的操作,在本示例中,启动操作可以为用户点击目标小程序的图标所触发的操作,也可以为用户输入的用于启动目标小程序的语音所形成的输入等,具体地,对于启动操作的具体触发形式可以根据使用需求而定,本实施例对此不加以限制。
在系统中可以预先存储不同小程序所对应的页面加载模板,在接收到针对目标小程序的启动操作之后,可以获取该目标小程序对应的目标页面加载模板。
在获取到目标小程序对应的目标页面加载模板之后,执行步骤205。
步骤205:在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
目标首页面是指目标小程序的首页面,即在目标小程序启动之后首次显示的页面。
在获取到目标小程序对应的目标页面加载模板之后,可以在目标小程序的视图层启动之前,基于目标页面加载模板渲染显示目标小程序的目标首页面。具体地,目标小程序可以包括视图层和逻辑层,其中,逻辑层负责执行业务逻辑,视图层根据逻辑层执行后的结果渲染出页面内容,在启动目标小程序之后,逻辑层即开始执行业务逻辑,此时,视图层等待逻辑层的执行结果,本实施例可以在视图层启动之前即通过目标页面加载模板渲染显示目标小程序的目标首页面,可以减少等待逻辑层的业务逻辑执行时间,从而缩短了小程序的首页面的显示时间,提升了小程序的启动速度。
步骤206:接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息。
目标页面信息是指逻辑层执行业务逻辑所生成的目标首页面的页面信息。
在基于目标页面加载模板渲染显示目标小程序的目标首页面,且在目标小程序的逻辑层执行完业务逻辑之后,可以获取目标小程序的逻辑层发送的目标首页面的目标页面信息。
在获取到目标小程序的逻辑层发送的目标首页面的目标页面信息之后,执行步骤207。
步骤207:基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件。
页面差异组件是指目标小程序的逻辑层执行业务逻辑得到的首页面的页面信息,与通过目标页面加载模板渲染的目标首页面的页面信息之间存在差异的页面组件。
在获取到目标小程序的逻辑层发送的目标首页面的目标页面信息之后,可以将该目标页面信息与渲染显示的目标首页面的页面信息进行比对,以确定出页面差异组件。
步骤208:基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
在确定出页面差异组件之后,可以基于页面差异组件的源码信息替换页面加载模板中对应的虚拟代码,并渲染显示转换的首页面,在本示例中,页面加载模板在WEB模式为纯HTML+CSS的WEB页面。如果在此页面上重新绘制真实渲染的DOM元素,会导致页面抖动,页面中图片反复加载等问题,本实施例通过节点合并算法,逐级遍历模板中的DOM元素,与小程序业务代码中渲染的虚拟DOM元素做对比,复用模板中的元素,做到页面无抖动无刷新。
本公开的实施例提供的页面显示方法,通过在接收到针对目标小程序的启动操作之后,获取目标小程序对应的目标页面加载模板,在目标小程序的视图层启动之前,基于目标页面加载模板,渲染显示目标小程序的目标首页面。本公开的实施例根据预先生成的小程序的页面加载模板,可以在小程序的视图层启动之前渲染显示小程序的首页面,从而可以缩短小程序的首页面的显示时间,提升了小程序的启动速度。
实施例三
参照图4,示出了本公开的实施例提供的一种页面显示装置的结构示意图,如图4所示,该页面显示装置400可以包括以下模块:
目标模板获取模块410,用于在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
目标首页面显示模块420,用于在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
本公开的实施例提供的页面显示装置,通过在接收到针对目标小程序的启动操作之后,获取目标小程序对应的目标页面加载模板,在目标小程序的视图层启动之前,基于目标页面加载模板,渲染显示目标小程序的目标首页面。本公开的实施例根据预先生成的小程序的页面加载模板,可以在小程序的视图层启动之前渲染显示小程序的首页面,从而可以缩短小程序的首页面的显示时间,提升了小程序的启动速度。
实施例四
参照图5,示出了本公开的实施例提供的另一种页面显示装置的结构示意图,如图5所示,该页面显示装置500可以包括以下模块:
页面布局信息获取模块510,用于获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序;
虚拟节点树生成模块520,用于基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树;
页面加载模板生成模块530,用于基于所述虚拟节点树,生成所述小程序对应的页面加载模板;
目标模板获取模块540,用于在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
目标首页面显示模块550,用于在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面;
目标页面信息接收模块560,用于接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息;
页面差异组件确定模块570,用于基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件;
代码信息替换模块580,用于基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
可选地,所述虚拟节点树生成模块520包括:
真实节点树构建单元,用于根据所述源代码信息,构建所述首页面对应的真实节点树;
虚拟代码信息编译单元,用于编译得到所述页面布局信息对应的虚拟代码信息;
虚拟节点树生成单元,用于基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
可选地,所述页面加载模板生成模块530包括:
页面加载模板生成单元,用于遍历所述虚拟节点树,生成所述小程序对应的页面加载模板。
本公开的实施例提供的页面显示装置,通过在接收到针对目标小程序的启动操作之后,获取目标小程序对应的目标页面加载模板,在目标小程序的视图层启动之前,基于目标页面加载模板,渲染显示目标小程序的目标首页面。本公开的实施例根据预先生成的小程序的页面加载模板,可以在小程序的视图层启动之前渲染显示小程序的首页面,从而可以缩短小程序的首页面的显示时间,提升了小程序的启动速度。
本公开的实施例还提供了一种电子设备,包括:处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现前述实施例的页面显示方法。
本公开的实施例还提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述实施例的页面显示方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本公开的实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本公开的实施例的内容,并且上面对特定语言所做的描述是为了披露本公开的实施例的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开的实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的实施例的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
本公开的实施例的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本公开的实施例的动态图片的生成设备中的一些或者全部部件的一些或者全部功能。本公开的实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序。这样的实现本公开的实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本公开的实施例进行说明而不是对本公开的实施例进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开的实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述仅为本公开的实施例的较佳实施例而已,并不用以限制本公开的实施例,凡在本公开的实施例的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本公开的实施例的保护范围之内。
以上所述,仅为本公开的实施例的具体实施方式,但本公开的实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开的实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的实施例的保护范围之内。因此,本公开的实施例的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种页面显示方法,其特征在于,包括:
在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
2.根据权利要求1所述的方法,其特征在于,在所述获取所述目标小程序对应的目标页面加载模板之前,还包括:
获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序;
基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树;
基于所述虚拟节点树,生成所述小程序对应的页面加载模板。
3.根据权利要求2所述的方法,其特征在于,所述基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树,包括:
根据所述源代码信息,构建所述首页面对应的真实节点树;
编译得到所述页面布局信息对应的虚拟代码信息;
基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
4.根据权利要求2所述的方法,其特征在于,所述基于所述虚拟节点树,生成所述小程序对应的页面加载模板,包括:
遍历所述虚拟节点树,生成所述小程序对应的页面加载模板。
5.根据权利要求1所述的方法,其特征在于,在所述基于所述目标页面加载模板,渲染显示所述目标小程序的首页面之后,还包括:
接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息;
基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件;
基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
6.一种页面显示装置,其特征在于,包括:
目标模板获取模块,用于在接收到针对目标小程序的启动操作之后,获取所述目标小程序对应的目标页面加载模板;
目标首页面显示模块,用于在所述目标小程序的视图层启动之前,基于所述目标页面加载模板,渲染显示所述目标小程序的目标首页面。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
页面布局信息获取模块,用于获取小程序的首页面的页面源代码信息,及所述首页面的页面布局信息;所述目标小程序为所述小程序中的一个小程序;
虚拟节点树生成模块,用于基于所述源代码信息和所述页面布局信息,生成所述首页面对应的虚拟节点树;
页面加载模板生成模块,用于基于所述虚拟节点树,生成所述小程序对应的页面加载模板。
8.根据权利要求7所述的装置,其特征在于,所述虚拟节点树生成模块包括:
真实节点树构建单元,用于根据所述源代码信息,构建所述首页面对应的真实节点树;
虚拟代码信息编译单元,用于编译得到所述页面布局信息对应的虚拟代码信息;
虚拟节点树生成单元,用于基于所述虚拟代码信息和所述真实节点树,生成所述首页面对应的虚拟节点树。
9.根据权利要求7所述的装置,其特征在于,所述页面加载模板生成模块包括:
页面加载模板生成单元,用于遍历所述虚拟节点树,生成所述小程序对应的页面加载模板。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
目标页面信息接收模块,用于接收所述目标小程序的逻辑层发送的所述目标首页面的目标页面信息;
页面差异组件确定模块,用于基于所述目标页面信息与所述目标首页面的页面信息的比对,确定页面差异组件;
代码信息替换模块,用于基于所述页面差异组件的源码信息替换所述目标页面加载模板中对应的虚拟代码,显示转换的首页面。
11.一种电子设备,其特征在于,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至5中任一项所述的页面显示方法。
12.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行权利要求1至5中任一项所述的页面显示方法。
CN202210408814.3A 2022-04-19 2022-04-19 页面显示方法、装置、电子设备及存储介质 Pending CN114911555A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210408814.3A CN114911555A (zh) 2022-04-19 2022-04-19 页面显示方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210408814.3A CN114911555A (zh) 2022-04-19 2022-04-19 页面显示方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114911555A true CN114911555A (zh) 2022-08-16

Family

ID=82765338

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210408814.3A Pending CN114911555A (zh) 2022-04-19 2022-04-19 页面显示方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114911555A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024040825A1 (zh) * 2022-08-26 2024-02-29 百度在线网络技术(北京)有限公司 应用程序首页的内容推荐方法、装置、设备、介质及产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102065572A (zh) * 2009-11-17 2011-05-18 中国移动通信集团广东有限公司 移动浏览器、网关、浏览系统及互联网页面访问方法
WO2017036309A1 (zh) * 2015-08-31 2017-03-09 阿里巴巴集团控股有限公司 页面渲染方法、装置及设备
CN110427225A (zh) * 2019-07-29 2019-11-08 阿里巴巴集团控股有限公司 一种启动小程序的方法和装置
CN110955428A (zh) * 2019-11-27 2020-04-03 北京奇艺世纪科技有限公司 一种页面显示方法、装置、电子设备及介质
CN112540806A (zh) * 2020-12-25 2021-03-23 北京百度网讯科技有限公司 一种小程序页面渲染方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102065572A (zh) * 2009-11-17 2011-05-18 中国移动通信集团广东有限公司 移动浏览器、网关、浏览系统及互联网页面访问方法
WO2017036309A1 (zh) * 2015-08-31 2017-03-09 阿里巴巴集团控股有限公司 页面渲染方法、装置及设备
CN110427225A (zh) * 2019-07-29 2019-11-08 阿里巴巴集团控股有限公司 一种启动小程序的方法和装置
CN110955428A (zh) * 2019-11-27 2020-04-03 北京奇艺世纪科技有限公司 一种页面显示方法、装置、电子设备及介质
CN112540806A (zh) * 2020-12-25 2021-03-23 北京百度网讯科技有限公司 一种小程序页面渲染方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
极乐君: "浅析前端页面渲染机制", pages 1 - 13, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/26105913?utm_id=0> *
极乐君: "浅谈前端页面渲染机制", Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/26105913> *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024040825A1 (zh) * 2022-08-26 2024-02-29 百度在线网络技术(北京)有限公司 应用程序首页的内容推荐方法、装置、设备、介质及产品

Similar Documents

Publication Publication Date Title
CN111552473B (zh) 一种应用程序的处理方法、装置及设备
CN103713891B (zh) 一种在移动设备上进行图形渲染的方法和装置
JP4857349B2 (ja) ポータル・システム内で非同期ポータル・ページを提供するための方法、システム、およびコンピュータ・プログラム
CN110134378B (zh) 应用程序创建方法及装置、计算机设备及存储介质
RU2459238C2 (ru) Управляемая среда выполнения для организации взаимодействия между программными приложениями
US8615750B1 (en) Optimizing application compiling
US20070039010A1 (en) Automatic generation of software code to facilitate interoperability
CN110806868B (zh) 一种单页面搭建及加载方法
KR20150079867A (ko) Html5-프로토콜 기반 웹페이지 표시 방법 및 장치
CN109165357A (zh) 图片生成方法、服务器、电子设备及可读存储介质
CN111880790A (zh) 页面渲染方法、页面渲染系统和计算机可读存储介质
CN111880788A (zh) 页面渲染方法、装置、客户端和计算机可读存储介质
CN114489647A (zh) 一种小程序的组件化构建方法、装置、设备和介质
CN112306486B (zh) 一种界面生成方法、装置、服务器及存储介质
Thakur Evaluation and implementation of progressive web application
CN114911555A (zh) 页面显示方法、装置、电子设备及存储介质
US11604662B2 (en) System and method for accelerating modernization of user interfaces in a computing environment
CN110825383A (zh) 一种视频交互方法、装置及计算机可读存储介质
US20090049423A1 (en) Javascripttm programming extension
CN111880789A (zh) 页面渲染方法、装置、服务端和计算机可读存储介质
CN103744667A (zh) 一种基于Silverlight实现组态功能的系统
CN113641594B (zh) 跨端自动化测试方法以及相关装置
CN115543324A (zh) 交互界面的生成方法、装置、设备及介质
JP7260150B2 (ja) Webサイト設計支援装置、Webサイト設計支援方法、及びプログラム
CN114579137B (zh) 一种页面渲染方法、装置、计算机设备和存储介质

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