掌桥专利:专业的专利平台
掌桥专利
首页

一种客户端构建方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 10:58:46


一种客户端构建方法、装置、电子设备及存储介质

技术领域

本申请涉及计算机技术领域,具体而言,涉及一种客户端构建方法、装置、电子设备及存储介质。

背景技术

随着electron技术的逐渐成熟以及javaScript的易用性,electron在桌面软件中的应用越来越广泛了,开发的应用的复杂性也越来越高,对于使用electron进行开发,现有的方法多数是逐个将使用到的技术添加到项目中,大大增加了开发者的工作量,影响其工作效率。

发明内容

本申请实施例的目的在于提供一种客户端构建方法、装置、电子设备及存储介质,预设模板框架,通过快捷指令快速生成项目代码,减少开发者去添加各个模板代码的工作量,提高工作效率,解决现有方法中需要逐个将使用到的技术添加到项目中,大大增加了开发者的工作量,影响其工作效率的问题。

本申请实施例提供了一种客户端构建方法,所述方法包括:

接收用户输入的模板拉取指令;

解析所述模板拉取指令,以获取对应的解析参数;

根据所述解析参数选择预先设置的对应的模板框架;

下载所述模板框架,以根据所述模板框架生成构建客户端所需的项目文件。

在上述实现过程中,通过快捷指令选取已经设置好的模板框架,从而快速生成具有完整开发能力的项目代码以及对应的功能示例,减少开发者去添加各个模板代码的工作量,提高工作效率,解决现有方法中需要逐个将使用到的技术添加到项目中,大大增加了开发者的工作量,影响其工作效率的问题,并且并不局限在单一的前端模板框架上,可以根据需要去选择需要的前端模板框架,增加了灵活性。

进一步地,所述模板框架包括主进程框架和渲染进程框架,所述在所述根据所述解析参数选择预先设置的对应的模板框架的步骤之前,所述方法还包括:

预先设置主进程框架的功能实例和渲染进程框架的功能实例;

将所述模板框架进行托管,以供下载。

在上述实现过程中,预先生成模板框架并放在托管网站上,可以根据需要进行下载,避免了开发者多次重复去添加各个模板代码,从而增加了工作量的问题。

进一步地,所述预先设置主进程框架的功能实例包括:

预先设置主进程框架的主进程项目启动功能、加载渲染进程功能、进程间通信功能、自动更新功能、错误捕获功能和项目打包功能。

在上述实现过程中,生成模板框架包括electron主进程功能的实现,使得生成的模板框架的主进程具有上述功能实例。

进一步地,所述预先设置渲染进程框架的功能实例,包括:

预先设置vue模板框架、react模板框架和html模板框架。

在上述实现过程中,通过不同的技术栈实现上述三种模板框架,使得在建立项目文件时,可以根据需要去选择实现哪种类型的模板框架。

进一步地,所述根据所述解析参数选择预先设置的对应的模板框架,包括:

若根据所述解析参数选择的模板类型为html型,则渲染进程根据所述html模板框架生成项目文件;

若根据所述解析参数选择的模板类型为vue型,则渲染进程根据所述vue模板框架生成项目文件;

若根据所述解析参数选择的模板类型为react型或默认类型,则渲染进程根据所述react模板框架生成项目文件。

在上述实现过程中,给出了模板框架类型的选择过程即通过解析参数选择对应类型的模板框架,从而快速生成对应的项目代码。

本申请实施例还提供一种客户端构建装置,所述装置包括:

接收模块,用于接收用户输入的模板拉取指令;

解析模块,用于解析所述模板拉取指令,以获取对应的解析参数;

选择模块,用于根据所述解析参数选择预先设置的对应的模板框架;

下载模块,用于下载所述模板框架,以根据所述模板框架生成构建客户端所需的项目文件。

在上述实现过程中,预先设置多种模板框架,用户(开发者)可以通过输入模板拉取指令选择需要的模板框架,从而快速生成项目文件,减少开发者去添加各个模板代码的工作量,提高工作效率,解决现有方法中需要逐个将使用到的技术添加到项目中,大大增加了开发者的工作量,影响其工作效率的问题。

进一步地,所述模板框架包括主进程框架和渲染进程框架,所述装置还包括:

预设模块,用于预先设置主进程框架的功能实例和渲染进程框架的功能实例;

托管模块,用于将所述模板框架进行托管,以供下载。

在上述实现过程中,预先设置好多种模板框架并存放至托管网站,构建项目时,可以下载对应的模板框架,从而实现项目文件的快速构建,减少工作量、提高效率。

进一步地,所述选择模块包括:

html模块,用于若根据所述解析参数选择的模板类型为html型,则渲染进程根据html模板框架生成项目文件;

vue模块,用于若根据所述解析参数选择的模板类型为vue型,则渲染进程根据vue模板框架生成项目文件;

react模块,用于若根据所述解析参数选择的模板类型为react型或默认类型,则渲染进程根据react模板框架生成项目文件。

在上述实现过程中,通过不同的技术栈构建不同种类的模板框架,从而可以根据需要进行选择,具有较高的灵活性。

本申请实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行上述中任一项所述的客户端构建方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述中任一项所述的客户端构建方法。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种客户端构建方法的流程图;

图2为本申请实施例提供的模板框架的构成示意图;

图3为本申请实施例提供的模板框架的预设流程图;

图4为本申请实施例提供的项目文件的生成流程图;

图5为本申请实施例提供的客户端构建装置的结构框图;

图6为本申请实施例提供的客户端构建装置的具体结构框图。

图标:

100-接收模块;200-解析模块;300-选择模块;311-预设模块;312-托管模块;301-html模块;302-vue模块;303-react模块;400-下载模块。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

实施例1

请参看图1,图1为本申请实施例提供的一种客户端构建方法的流程图。该方法基于electron实现,具体包括以下步骤:

步骤S100:接收用户输入的模板拉取指令;

在计算机等电子设备上安装npm(Node Package Manager,打包管理工具,是JavaScript运行时环境Node.js的默认包管理器)快速生成工具,在命令行输入快捷指令react-electron-cli选择参数,该快捷指令为模板拉取指令,以根据该快捷指令选择对应的模板类型。

步骤S200:解析所述模板拉取指令,以获取对应的解析参数;

根据模板拉取指令获取到解析参数,该解析参数可以用于选择不同类型的模板框架。

步骤S300:根据所述解析参数选择预先设置的对应的模板框架;

在该步骤之前,会将预先生成的模板框架存放至代码托管网站上,需要模板框架时直接下载即可,如图2所示,为模板框架的构成示意图,具体的,可预先设置模板框架以及其对应的功能,包括主进程框架和渲染进程框架,如图3所示,为模板框架的预设流程图,预先设置模板框架主要包括以下步骤:

步骤S311:预先设置主进程框架的功能实例和渲染进程框架的功能实例;

示例地,模板框架包括主进程框架和渲染进程框架,即预先设置主进程框架的主进程项目启动功能、加载渲染进程功能、进程间通信功能、自动更新功能、错误捕获功能和项目打包功能;预先设置vue模板框架、react模板框架和html模板框架。

其中,主进程项目启动的作用是创建electron实例,从而能够使用electron的各种功能;加载渲染进程将会区分出开发环境和生成环境,开发环境将会通过加载渲染进程开发环境启动的服务去加载渲染页面,生成环境会加载打包生成的静态资源;ipc(InterProcess Communication,进程间通信)通信主要是为了实现在主进程和渲染进程之间的通信;自动更新是使用electron-updater来实现软件安装包自动更新的能力;错误捕获能获取运行时代码的报错,并通过electron-log记录到日志文件中;项目打包通过是通过配置nsis来实现将项目代码打包成软件安装包的能力。

步骤S312:将所述模板框架存放至代码托管网站进行托管,以供下载。

将上述模板框架代码放置于代码托管网站如github代码托管网站上进行托管。

渲染进程框架包括vue模板框架、react模板框架和html模板框架,通过预先建立模板框架代码从而能够实现对应的功能如开启自启、通过浏览器自定义协议打开客户端、打包编译的配置等。

对于模板框架进行选择,如图4所示,为项目文件的生成流程图,其具体包括以下步骤:

步骤S301:若根据所述解析参数选择的模板类型为html型,则渲染进程根据所述html模板框架生成项目文件;

步骤S302:若根据所述解析参数选择的模板类型为vue型,则渲染进程根据所述vue模板框架生成项目文件;

步骤S303:若根据所述解析参数选择的模板类型为react型或默认类型,则渲染进程根据所述react模板框架生成项目文件。

若解析参数选择的是html5模板,渲染进程就会选择html5模板框架;若解析参数选择的是vue模板,渲染进程就会选择vue模板框架;若解析参数选择的是react模板或没有选择,渲染进程就会默认选择react模板框架。

步骤S400:下载所述模板框架,以根据所述模板框架生成构建客户端所需的项目文件。

利用项目文件即可快速生成对应的客户端,本申请将electron开发要用到的基本模块都整合到模板框架中,在下载时,利用npm的包管理机制即npm是一个包管理器可以到github代码托管网站上下载所需的模板框架代码,例如需要开发一个类似于钉钉的客户端,可以通过快捷指令生成项目文件,该项目文件中预设了客户端的框架结构和通用的功能,如窗口布局等功能,这样开发人员可以有更多时间去填充该客户端特有的功能所需的代码,减少了开发者去添加各个模板代码的工作量,减少了重复性的劳动,提高了工作效率,并且模板框架的类型并不局限于单一的前端框架上,提供了多种类型的模板框架,可由使用者去选择渲染进行需要的模板框架类型,增加了灵活性。

实施例2

本申请实施例提供一种客户端构建装置,该装置应用于实施例1中的客户端构建方法,如图5所示,为客户端构建装置的结构框图,该装置包括但不限于:

接收模块100,用于接收用户输入的模板拉取指令;

解析模块200,用于解析所述模板拉取指令,以获取对应的解析参数;

选择模块300,用于根据所述解析参数选择预先设置的对应的模板框架;

下载模块400,用于下载所述模板框架,以根据所述模板框架生成构建客户端所需的项目文件。

预先设置多种模板框架,用户(开发者)可以通过输入模板拉取指令选择需要的模板框架,从而快读生成项目文件,减少开发者去添加各个模板代码的工作量,提高工作效率,解决现有方法中需要逐个将使用到的技术添加到项目中,大大增加了开发者的工作量,影响其工作效率的问题。

如图6所示,为客户端构建装置的具体结构框图,该装置还包括:

预设模块311,用于预先设置主进程框架的功能实例和渲染进程框架的功能实例;

所述模板框架包括主进程框架和渲染进程框架,即预先设置主进程框架的主进程项目启动功能、加载渲染进程功能、进程间通信功能、自动更新功能、错误捕获功能和项目打包功能;预先设置vue模板框架、react模板框架和html模板框架。

托管模块312,用于将所述模板框架存放至代码托管网站进行托管,以供下载。

预先设置好多种模板框架并存放至托管网站,构建项目时,可以下载对应的模板框架,从而实现项目文件的快速构建,减少工作量、提高效率。

所述选择模块300包括:

html模块301,用于若根据所述解析参数选择的模板类型为html型,则渲染进程根据html模板框架生成项目文件;

vue模块302,用于若根据所述解析参数选择的模板类型为vue型,则渲染进程根据vue模板框架生成项目文件;

react模块303,用于若根据所述解析参数选择的模板类型为react型或默认类型,则渲染进程根据react模板框架生成项目文件。

预先设置好多种类型的模板框架并存放至托管网站,构建项目文件时,可以下载需要的模板框架,从而实现项目文件的快速构建,减少工作量、提高效率。

本申请实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行实施例1所述的客户端构建方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行实施例1所述的客户端构建方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

相关技术
  • 一种客户端构建方法、装置、电子设备及存储介质
  • 版本构建方法、版本构建装置、电子设备及可读存储介质
技术分类

06120112759027