CN112527413A - 一种页面加载方法、装置、设备及存储介质 - Google Patents
一种页面加载方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112527413A CN112527413A CN202011542741.4A CN202011542741A CN112527413A CN 112527413 A CN112527413 A CN 112527413A CN 202011542741 A CN202011542741 A CN 202011542741A CN 112527413 A CN112527413 A CN 112527413A
- Authority
- CN
- China
- Prior art keywords
- worker
- browser
- execution function
- executing
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例涉及大数据领域,公开了一种页面加载方法、装置、设备及存储介质,该方法包括:获取前端的浏览器执行实例化web worker操作的操作数据;根据操作数据确定浏览器执行实例化web worker操作的次数,当确定操作的次数为两次或多于两次时,接收外部函数传入的执行函数;当外部函数传入的执行函数满足预设条件时,根据外部函数传入的执行函数生成worker文件;根据worker文件确定新的目标线程,并利用目标线程对浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息,以提高页面加载的速度。本发明涉及区块链技术,如可将操作数据写入区块链中,以用于数据取证等场景。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种页面加载方法、装置、设备及存储介质。
背景技术
目前前端vue框架使用过程中,大部分vue项目是采用单页面应用的形式,这种形式对于大型的应用来说,由于单页应用首次加载需要加载整个应用所有内容,需要进行大量的数据运算,比如页面动画的渲染,页面图表的大量数据实时运算,因此存在首屏加载速度过慢,导致用户首次打开页面时候需要较长的时间看到的问题。
发明内容
本发明实施例提供了一种页面加载方法、装置、设备及存储介质,可以提高页面加载的速度。
第一方面,本发明实施例提供了一种页面加载方法,所述方法包括:
获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
进一步地,所述获取前端的浏览器执行实例化web worker操作的操作数据之前,还包括:
获取所述浏览器的版本信息,并根据所述浏览器的版本信息确定所述浏览器是否支持web worker;
当确定所述浏览器支持所述web worker时,执行所述获取前端的浏览器执行实例化web worker操作的操作数据的步骤。
进一步地,所述当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件,包括:
检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息;
当检测到所述外部函数传入的执行函数中包含不符合要求的调用信息时,确定所述外部函数传入的执行函数满足预设条件,并根据所述外部函数传入的执行函数生成worker文件。
进一步地,所述根据所述外部函数传入的执行函数生成worker文件,包括:
根据所述外部函数传入的执行函数确定与所述执行函数对应的入参信息,所述入参信息用于接收外部函数传入的参数;
当根据所述入参信息接收到所述外部函数传入的参数时,触发执行所述外部函数传入的执行函数,并根据执行所述执行函数的结果数据生成worker文件。
进一步地,所述根据所述worker文件确定新的目标线程,包括:
根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息;
根据所述调用逻辑信息调用所述worker创建新的目标线程。
进一步地,所述根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息,包括:
获取所述worker文件中包括的地址信息,并根据所述地址信息创建web worker实例;
根据所述创建的web worker实例获取所述外部函数传入的执行函数中包括的入参信息,并将所述入参信息发送给所述worker;
当获取到所述worker发送的用于指示确定接收的通知消息时,生成调用所述worker创建新的目标线程的调用逻辑信息。
进一步地,所述获取前端的浏览器执行实例化web worker操作的操作数据之前,还包括:
根据所述前端的当前vue项目确定所述当前vue项目的根目录,并在确定的所述当前vue项目的根目录中编写配置文件;
在所述配置文件中配置执行实例化web worker操作的方法以及执行线程的方法。
第二方面,本发明实施例提供了一种页面加载装置,包括:
获取单元,用于获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
确定单元,用于根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
生成单元,用于当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
处理单元,用于根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
第三方面,本发明实施例提供了一种计算机设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持页面加载装置执行上述方法的计算机程序,所述计算机程序包括程序,所述处理器被配置用于调用所述程序,执行上述第一方面的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行以实现上述第一方面的方法。
本发明实施例可以获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;根据所述操作数据确定所述浏览器执行实例化webworker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息,通过这种实施方式可以提高页面加载的速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种页面加载方法的示意流程图;
图2是本发明实施例提供的一种页面加载装置的示意框图;
图3是本发明实施例提供的一种计算机设备的示意框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的页面加载方法可以应用于一种页面加载装置,在某些实施例中,所述页面加载装置设置于计算机设备中。在某些实施例中,所述计算机设备包括但不限于智能手机、平板电脑、膝上型电脑等中的一种或者多种。在某些实施例中,本发明实施例提供的页面加载方法可以应用于前端vue项目中。
下面结合附图1对本发明实施例提供的页面加载方法进行示意性说明。
请参见图1,图1是本发明实施例提供的一种页面加载方法的示意流程图,如图1所示,该方法可以由页面加载装置执行,所述页面加载装置设置于计算机设备中。具体地,本发明实施例的所述方法包括如下步骤。
S101:获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker。
本发明实施例中,页面加载装置可以获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker。
在一个实施例中,页面加载装置在获取前端的浏览器执行实例化web worker操作的操作数据之前,可以获取所述浏览器的版本信息,并根据所述浏览器的版本信息确定所述浏览器是否支持web worker;当确定所述浏览器支持所述web worker时,执行所述获取前端的浏览器执行实例化web worker操作的操作数据的步骤。在某些实施例中,所述浏览器的版本信息包括但不限于浏览的信号、版本等。
在一个实施例中,页面加载装置在确定出所述浏览器不支持所述web worker时,可以按照预设的正常调用顺序同步执行加载页面。
在一个实施例中,页面加载装置在根据所述浏览器的版本信息确定所述浏览器是否支持web worker时,可以判断所述浏览器的版本、型号等是否支持web worker。在一种具体实施方式中,可以通过typeof(Worker)方法,判断浏览器的版本信息是否等于underfined,以及通过浏览器自带的window.navigator.userAgent方法判断当前浏览器的型号和版本是否满足条件,当这两个条件均满足时,确定所述浏览器支持web worker。
在一个实施例中,页面加载装置在获取前端的浏览器执行实例化web worker操作的操作数据之前,可以根据所述前端的当前vue项目确定所述当前vue项目的根目录,并在确定的所述当前vue项目的根目录中编写配置文件;在所述配置文件中配置执行实例化webworker操作的方法以及执行线程的方法。
在一个实施例中,页面加载装置在根据所述前端的当前vue项目确定所述当前vue项目的根目录时,可以获取所述前端中的当前vue项目,并根据所述前端中的当前vue项目确定所述当前vue项目中的根目录。
在一个实施例中,页面加载装置在根据所述前端中的当前vue项目确定所述当前vue项目中的根目录时,具体可以在命令行(mac系统为终端),定位当前vue项目的根目录,执行命令,如npm i pa-web-worker-with-vue-D。
S102:根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数。
本发明实施例中,页面加载装置可以根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数。
在一个实施例中,页面加载装置当确定所述浏览器执行实例化web worker操作的次数小于两次时,则可以确定停止加载页面,生成并输出异常提示信息,所述异常提示信息用于提示用户出现异常。
在一个实施例中,页面加载装置可以通过检测前端浏览器是否超过一次执行new命令操作创建超过一个web worker实例,如果检测结果为浏览器超过一次执行new命令操作创建超过一个web worker实例,则可以接收外部函数传入的执行函数。
S103:当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件。
本发明实施例中,页面加载装置可以当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件。
在一个实施例中,页面加载装置在当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件时,可以检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息;当检测到所述外部函数传入的执行函数中包含不符合要求的调用信息时,确定所述外部函数传入的执行函数满足预设条件,并根据所述外部函数传入的执行函数生成worker文件。
在一个实施例中,页面加载装置在检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息时,可以判断所述执行函数中是否包含关键字如window、document,来判断所述执行函数是否涉及页面元素的dom操作,以及浏览器自带对象的bom操作,如果判断结果为是,则确定所述外部函数传入的执行函数中包含不符合要求的调用信息。
在一个实施例中,页面加载装置在根据所述外部函数传入的执行函数生成worker文件时,可以根据所述外部函数传入的执行函数确定与所述执行函数对应的入参信息,所述入参信息用于接收外部函数传入的参数;当根据所述入参信息接收到所述外部函数传入的参数时,触发执行所述外部函数传入的执行函数,并根据执行所述执行函数的结果数据生成worker文件。
在一个实施例中,页面加载装置可以将获取到的外部函数传入的执行函数作为worker文件的主要内容;设置接收所述执行函数的参数的onmessage方法,接收作为外部函数执行时候,需要外部函数传入的参数;当接收到外部函数传入的参数时,开始执行所述执行函数对应的逻辑内容;将执行函数中return的返回数据的内容,改写为postMessage(内容),作为回传给原线程的数据。如果执行函数中没有包含return关键字,则默认在执行函数最后一行,增加postMessage(完成),以通知原线程web worker内容执行完毕。
S104:根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
本发明实施例中,页面加载装置可以根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
在一个实施例中,页面加载装置在根据所述worker文件确定新的目标线程时,可以根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息;并根据所述调用逻辑信息调用所述worker创建新的目标线程。
在一个实施例中,页面加载装置在根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息时,可以获取所述worker文件中包括的地址信息,并根据所述地址信息创建web worker实例;根据所述创建的web worker实例获取所述外部函数传入的执行函数中包括的入参信息,并将所述入参信息发送给所述worker;当获取到所述worker发送的用于指示确定接收的通知消息时,生成调用所述worker创建新的目标线程的调用逻辑信息。
在一个实施例中,页面加载装置可以创建一个原生的web worker实例,获取到外部函数传入的执行函数中包含的入参,并将该入参传递给worker,将整个执行函数进行封装,当接收到worker函数传过来完成的标识或者数据时候,将数据传回原线程。
本发明实施例中,页面加载装置可以获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息,通过这种实施方式开发者不需要了解webworker相关的语法内容,通过新建一条线程,作为复杂逻辑运算的操作,大大减少了开发者的工作量和学习成本,提高了页面加载的速度。
本发明实施例还提供了一种页面加载装置,该页面加载装置用于执行前述任一项所述的方法的单元。具体地,参见图2,图2是本发明实施例提供的一种页面加载装置的示意框图。本实施例的页面加载装置包括:获取单元201、第一确定单元202、生成单元203以及处理单元204。
获取单元201,用于获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
确定单元202,用于根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
生成单元203,用于当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
处理单元204,用于根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
进一步地,所述获取单元201获取前端的浏览器执行实例化web worker操作的操作数据之前,还用于:
获取所述浏览器的版本信息,并根据所述浏览器的版本信息确定所述浏览器是否支持web worker;
当确定所述浏览器支持所述web worker时,执行所述获取前端的浏览器执行实例化web worker操作的操作数据的步骤。
进一步地,所述生成单元203当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件时,具体用于:
检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息;
当检测到所述外部函数传入的执行函数中包含不符合要求的调用信息时,确定所述外部函数传入的执行函数满足预设条件,并根据所述外部函数传入的执行函数生成worker文件。
进一步地,所述生成单元203根据所述外部函数传入的执行函数生成worker文件时,具体用于:
根据所述外部函数传入的执行函数确定与所述执行函数对应的入参信息,所述入参信息用于接收外部函数传入的参数;
当根据所述入参信息接收到所述外部函数传入的参数时,触发执行所述外部函数传入的执行函数,并根据执行所述执行函数的结果数据生成worker文件。
进一步地,所述处理单元204根据所述worker文件确定新的目标线程时,具体用于:
根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息;
根据所述调用逻辑信息调用所述worker创建新的目标线程。
进一步地,所述处理单元204根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息时,具体用于:
获取所述worker文件中包括的地址信息,并根据所述地址信息创建web worker实例;
根据所述创建的web worker实例获取所述外部函数传入的执行函数中包括的入参信息,并将所述入参信息发送给所述worker;
当获取到所述worker发送的用于指示确定接收的通知消息时,生成调用所述worker创建新的目标线程的调用逻辑信息。
进一步地,所述获取单元201获取前端的浏览器执行实例化web worker操作的操作数据之前,还用于:
根据所述前端的当前vue项目确定所述当前vue项目的根目录,并在确定的所述当前vue项目的根目录中编写配置文件;
在所述配置文件中配置执行实例化web worker操作的方法以及执行线程的方法。
本发明实施例中,页面加载装置可以获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息,通过这种实施方式可以提高页面加载的速度。
参见图3,图3是本发明实施例提供的一种计算机设备的示意框图。如图所示的本实施例中的设备可以包括:一个或多个处理器301;一个或多个输入设备302,一个或多个输出设备303和存储器304。上述处理器301、输入设备302、输出设备303和存储器304通过总线305连接。存储器304用于存储计算机程序,所述计算机程序包括程序,处理器301用于执行存储器304存储的程序。其中,处理器301被配置用于调用所述程序执行:
获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
进一步地,所述处理器301获取前端的浏览器执行实例化web worker操作的操作数据之前,还用于:
获取所述浏览器的版本信息,并根据所述浏览器的版本信息确定所述浏览器是否支持web worker;
当确定所述浏览器支持所述web worker时,执行所述获取前端的浏览器执行实例化web worker操作的操作数据的步骤。
进一步地,所述处理器301当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件时,具体用于:
检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息;
当检测到所述外部函数传入的执行函数中包含不符合要求的调用信息时,确定所述外部函数传入的执行函数满足预设条件,并根据所述外部函数传入的执行函数生成worker文件。
进一步地,所述处理器301根据所述外部函数传入的执行函数生成worker文件时,具体用于:
根据所述外部函数传入的执行函数确定与所述执行函数对应的入参信息,所述入参信息用于接收外部函数传入的参数;
当根据所述入参信息接收到所述外部函数传入的参数时,触发执行所述外部函数传入的执行函数,并根据执行所述执行函数的结果数据生成worker文件。
进一步地,所述处理器301根据所述worker文件确定新的目标线程时,具体用于:
根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息;
根据所述调用逻辑信息调用所述worker创建新的目标线程。
进一步地,所述处理器301根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息时,具体用于:
获取所述worker文件中包括的地址信息,并根据所述地址信息创建web worker实例;
根据所述创建的web worker实例获取所述外部函数传入的执行函数中包括的入参信息,并将所述入参信息发送给所述worker;
当获取到所述worker发送的用于指示确定接收的通知消息时,生成调用所述worker创建新的目标线程的调用逻辑信息。
进一步地,所述处理器301获取前端的浏览器执行实例化web worker操作的操作数据之前,还用于:
根据所述前端的当前vue项目确定所述当前vue项目的根目录,并在确定的所述当前vue项目的根目录中编写配置文件;
在所述配置文件中配置执行实例化web worker操作的方法以及执行线程的方法。
本发明实施例中,计算机设备可以获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息,通过这种实施方式可以提高页面加载的速度。
应当理解,在本发明实施例中,所称处理器301可以是中央处理单元(CenSralProcessing UniS,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigiSalSignal Processor,DSP)、专用集成电路(ApplicaSion Specific InSegraSed CircuiS,ASIC)、现成可编程门阵列(Field-Programmable GaSe Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备302可以包括触控板、麦克风等,输出设备303可以包括显示器(LCD等)、扬声器等。
该存储器304可以包括只读存储器和随机存取存储器,并向处理器301提供指令和数据。存储器304的一部分还可以包括非易失性随机存取存储器。例如,存储器304还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器301、输入设备302、输出设备303可执行本发明实施例提供的图1所述的方法实施例中所描述的实现方式,也可执行本发明实施例图2所描述的页面加载装置的实现方式,在此不再赘述。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现图1所对应实施例中描述的页面加载方法,也可实现本发明图2所对应实施例的页面加载装置,在此不再赘述。
所述计算机可读存储介质可以是前述任一实施例所述的页面加载装置的内部存储单元,例如页面加载装置的硬盘或内存。所述计算机可读存储介质也可以是所述页面加载装置的外部存储装置,例如所述页面加载装置上配备的插接式硬盘,智能存储卡(SmarSMedia Card,SMC),安全数字(Secure DigiSal,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述页面加载装置的内部存储单元也包括外部存储装置。所述计算机可读存储介质用于存储所述计算机程序以及所述页面加载装置所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。所述的计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
需要强调的是,为进一步保证上述数据的私密和安全性,上述数据还可以存储于一区块链的节点中。其中,本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
以上所述,仅为本发明的部分实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种页面加载方法,其特征在于,所述方法包括:
获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
2.根据权利要求1所述的方法,其特征在于,所述获取前端的浏览器执行实例化webworker操作的操作数据之前,还包括:
获取所述浏览器的版本信息,并根据所述浏览器的版本信息确定所述浏览器是否支持web worker;
当确定所述浏览器支持所述web worker时,执行所述获取前端的浏览器执行实例化web worker操作的操作数据的步骤。
3.根据权利要求1所述的方法,其特征在于,所述当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件,包括:
检测所述外部函数传入的执行函数中是否包含不符合要求的调用信息;
当检测到所述外部函数传入的执行函数中包含不符合要求的调用信息时,确定所述外部函数传入的执行函数满足预设条件,并根据所述外部函数传入的执行函数生成worker文件。
4.根据权利要求3所述的方法,其特征在于,所述根据所述外部函数传入的执行函数生成worker文件,包括:
根据所述外部函数传入的执行函数确定与所述执行函数对应的入参信息,所述入参信息用于接收外部函数传入的参数;
当根据所述入参信息接收到所述外部函数传入的参数时,触发执行所述外部函数传入的执行函数,并根据执行所述执行函数的结果数据生成worker文件。
5.根据权利要求4所述的方法,其特征在于,所述根据所述worker文件确定新的目标线程,包括:
根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息;
根据所述调用逻辑信息调用所述worker创建新的目标线程。
6.根据权利要求5所述的方法,其特征在于,所述根据所述worker文件生成调用所述worker创建新的目标线程的调用逻辑信息,包括:
获取所述worker文件中包括的地址信息,并根据所述地址信息创建web worker实例;
根据所述创建的web worker实例获取所述外部函数传入的执行函数中包括的入参信息,并将所述入参信息发送给所述worker;
当获取到所述worker发送的用于指示确定接收的通知消息时,生成调用所述worker创建新的目标线程的调用逻辑信息。
7.根据权利要求1所述的方法,其特征在于,所述获取前端的浏览器执行实例化webworker操作的操作数据之前,还包括:
根据所述前端的当前vue项目确定所述当前vue项目的根目录,并在确定的所述当前vue项目的根目录中编写配置文件;
在所述配置文件中配置执行实例化web worker操作的方法以及执行线程的方法。
8.一种页面加载装置,其特征在于,包括:
获取单元,用于获取前端的浏览器执行实例化web worker操作的操作数据,其中,所述浏览器支持所述web worker;
确定单元,用于根据所述操作数据确定所述浏览器执行实例化web worker操作的次数,当确定所述浏览器执行实例化web worker操作的次数为两次或多于两次时,接收外部函数传入的执行函数;
生成单元,用于当所述外部函数传入的执行函数满足预设条件时,根据所述外部函数传入的执行函数生成worker文件;
处理单元,用于根据所述worker文件确定新的目标线程,并利用所述目标线程对所述浏览器中待加载页面的数据信息进行处理,以及输出处理后的待加载页面的数据信息。
9.一种计算机设备,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序,所述处理器被配置用于调用所述程序,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011542741.4A CN112527413A (zh) | 2020-12-23 | 2020-12-23 | 一种页面加载方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011542741.4A CN112527413A (zh) | 2020-12-23 | 2020-12-23 | 一种页面加载方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527413A true CN112527413A (zh) | 2021-03-19 |
Family
ID=74976022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011542741.4A Pending CN112527413A (zh) | 2020-12-23 | 2020-12-23 | 一种页面加载方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527413A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110082984A1 (en) * | 2009-10-06 | 2011-04-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Shared Script Files in Multi-Tab Browser |
WO2013106649A2 (en) * | 2012-01-13 | 2013-07-18 | NetSuite Inc. | Fault tolerance for complex distributed computing operations |
CN104932892A (zh) * | 2015-06-19 | 2015-09-23 | 浪潮软件集团有限公司 | 一种基于WebWorker实现的Web应用中间件异步嵌套调用方法 |
US9513961B1 (en) * | 2014-04-02 | 2016-12-06 | Google Inc. | Monitoring application loading |
CN107483412A (zh) * | 2017-07-25 | 2017-12-15 | 中国科学院声学研究所 | 一种HTML5 web worker迁移方法及系统 |
WO2019052526A1 (zh) * | 2017-09-14 | 2019-03-21 | 北京金山云网络技术有限公司 | Api调用系统、方法、装置、电子设备及存储介质 |
CN111881401A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 基于WebAssembly的浏览器深度学习方法及系统 |
-
2020
- 2020-12-23 CN CN202011542741.4A patent/CN112527413A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110082984A1 (en) * | 2009-10-06 | 2011-04-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Shared Script Files in Multi-Tab Browser |
WO2013106649A2 (en) * | 2012-01-13 | 2013-07-18 | NetSuite Inc. | Fault tolerance for complex distributed computing operations |
US9513961B1 (en) * | 2014-04-02 | 2016-12-06 | Google Inc. | Monitoring application loading |
CN104932892A (zh) * | 2015-06-19 | 2015-09-23 | 浪潮软件集团有限公司 | 一种基于WebWorker实现的Web应用中间件异步嵌套调用方法 |
CN107483412A (zh) * | 2017-07-25 | 2017-12-15 | 中国科学院声学研究所 | 一种HTML5 web worker迁移方法及系统 |
WO2019052526A1 (zh) * | 2017-09-14 | 2019-03-21 | 北京金山云网络技术有限公司 | Api调用系统、方法、装置、电子设备及存储介质 |
CN111881401A (zh) * | 2020-08-04 | 2020-11-03 | 浪潮云信息技术股份公司 | 基于WebAssembly的浏览器深度学习方法及系统 |
Non-Patent Citations (1)
Title |
---|
HUANGZHI: "JavaScript Web Workers(二)专用Worker", pages 1 - 28, Retrieved from the Internet <URL:https://zhuanlan.zhihu.comp93470509> * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107679081B (zh) | 信息修改方法、装置、计算机设备及计算机可读存储介质 | |
CN108449316B (zh) | 一种反爬虫方法、服务器和客户端 | |
WO2016177341A1 (zh) | 接口调用方法、装置及终端 | |
US11137909B2 (en) | Secure data entry via a virtual keyboard | |
CN108874760A (zh) | 报表文件生成方法、装置、计算机设备及存储介质 | |
CN112527414B (zh) | 一种基于前端的数据处理方法、装置、设备及存储介质 | |
WO2018040913A1 (zh) | 一种界面展示方法及装置 | |
CN111294377B (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN114117498A (zh) | 脱敏数据的实现方法、装置、系统、设备及存储介质 | |
WO2020000947A1 (zh) | 实现封装形式的bios数据刷写的方法、装置及设备 | |
CN111338628B (zh) | 组件渲染方法及设备 | |
CN111506312B (zh) | 页面生成方法、装置、计算机设备及存储介质 | |
CN110442400B (zh) | 浏览器控制方法及装置 | |
CN110083355B (zh) | 一种app页面的处理方法及装置 | |
CN112527413A (zh) | 一种页面加载方法、装置、设备及存储介质 | |
CN116450134A (zh) | 可配置的前端控件校验控制器生成方法及系统 | |
CN113961286A (zh) | 一种应用程序的页面生成方法、装置及设备 | |
CN112528189A (zh) | 基于数据的组件封装方法、装置、计算机设备及存储介质 | |
CN112818268A (zh) | 一种数据展示方法、装置、终端设备及可读存储介质 | |
CN115562670B (zh) | 页面配置方法、装置、电子设备及介质 | |
CN108536438B (zh) | 处理用户行为数据的打点模块、方法及计算机可读介质 | |
CN115118476B (zh) | 一种用户权限校验方法、装置、电子设备和可读存储介质 | |
CN114500718B (zh) | 一种云手机管理方法及装置 | |
CN112527313A (zh) | 一种前端的语法转换方法、装置、设备及存储介质 | |
CN113495771A (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 |