本发明专利技术公开了一种Vue组件的文档生成方法及装置,其中,该方法包括:获取Vue组件的源代码文件,其中,所述Vue组件是组成页面视图的抽象单元;解析所述源代码文件,生成对应的抽象语法树AST;遍历所述AST中各个树节点;根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容,以生成所述Vue组件的描述文档,其中,所述描述文档用于记录所述Vue组件中各个对象的属性信息和交互关系。通过本发明专利技术,解决了相关技术中不能自动生成Vue组件的描述文档的技术问题,提高了描述文档的产出效率。
Document generation method and device of Vue component
【技术实现步骤摘要】
Vue组件的文档生成方法及装置
本专利技术涉及计算机领域,尤其是一种Vue组件的文档生成方法及装置。
技术介绍
相关技术中,Vue是一套用于构建用户界面的渐进式JavaScript框架,用于开发用户界面。开发人员编写完Vue组件之后,需要给该组件编写相应的文档,这样别的开发人员才知道如何使用该组件。相关技术中,给Vue组件编写文档是由开发人员手动完成的,这样既浪费精力又增加了维护成本。针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
技术实现思路
为解决相关技术中不能自动生成Vue组件的描述文档的技术问题,本专利技术实施例提供了一种Vue组件的文档生成方法及装置。根据本专利技术的一个实施例,提供了一种Vue组件的文档生成方法,包括:获取Vue组件的源代码文件,其中,所述Vue组件是组成页面视图的抽象单元;解析所述源代码文件,生成对应的抽象语法树AST;遍历所述AST中各个树节点;根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容,以生成所述Vue组件的描述文档,其中,所述描述文档用于记录所述Vue组件中各个对象的属性信息和交互关系。可选的,解析所述源代码文件,生成对应的AST,包括:读取所述源代码文件中的字符串;识别所述字符串的字符特征;根据所述字符串和所述字符特征生成所述Vue组件的AST。可选的,根据所述字符串和所述字符特征生成所述Vue组件的AST包括:基于字符特征生成Token序列,其中,所述Token序列包括所述源代码文件中的多个字符串;根据所述Token序列自顶向下构建所述源代码文件的AST,其中,所述Token序列中的每个字符串对应一个树节点。可选的,根据所述字符串和所述字符特征生成所述Vue组件的AST包括:基于字符特征对所述源代码文件中的多个字符串分别进行词法分析,生成Token序列;对所述Token序列进行语法分析,将每个字符串的Token转化为树形表达式,以生成所述源代码文件的AST。可选的,识别所述字符串的字符特征包括以下至少之一:识别所述字符串的props属性;识别所述字符串的字符标识;识别所述字符串的注释信息;识别所述字符串的类型。可选的,根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容包括:根据所述树节点的节点类型匹配目标描述块,其中,所述目标描述块包括以下之一:Props,Events,Slots,Methods,所述Props,所述Events,所述Slots是所述Vue组件中函数的应用编程接口API类型,所述Methods是所述Vue组件中方法之间的调用类型;在所述目标描述块中填充所述树节点的节点内容。可选的,在根据所述AST生成所述Vue组件的描述文档之后,所述方法还包括:在设置所述Vue组件与所述描述文档的关联关系之后,将所述Vue组件上传到JavaScript组件库。根据本专利技术的另一个实施例,提供了一种Vue组件的文档生成装置,包括:获取模块,用于获取Vue组件的源代码文件,其中,所述Vue组件是组成页面视图的抽象单元;解析模块,用于解析所述源代码文件,生成对应的抽象语法树AST;遍历模块,用于遍历所述AST中各个树节点;填充模块,用于根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容,以生成所述Vue组件的描述文档,其中,所述描述文档用于记录所述Vue组件中各个对象的属性信息和交互关系。可选的,所述解析模块,具体用于:读取所述源代码文件中的字符串;识别所述字符串的字符特征;根据所述字符串和所述字符特征生成所述Vue组件的AST。可选的,所述解析模块用于根据所述字符串和所述字符特征生成所述Vue组件的AST时,具体用于:基于字符特征生成Token序列,其中,所述Token序列包括所述源代码文件中的多个字符串;根据所述Token序列自顶向下构建所述源代码文件的AST,其中,所述Token序列中的每个字符串对应一个树节点。可选的,所述解析模块用于根据所述字符串和所述字符特征生成所述Vue组件的AST时,具体用于:基于字符特征对所述源代码文件中的多个字符串分别进行词法分析,生成Token序列;对所述Token序列进行语法分析,将每个字符串的Token转化为树形表达式,以生成所述源代码文件的AST。可选的,所述解析模块用于识别所述字符串的字符特征时,具体用于以下至少之一:识别所述字符串的props属性;识别所述字符串的字符标识;识别所述字符串的注释信息;识别所述字符串的类型。可选的,所述填充模块,具体用于:根据所述树节点的节点类型匹配目标描述块,其中,所述目标描述块包括以下之一:Props,Events,Slots,Methods,所述Props,所述Events,所述Slots是所述Vue组件中函数的应用编程接口API类型,所述Methods是所述Vue组件中方法之间的调用类型;在所述目标描述块中填充所述树节点的节点内容。可选的,所述装置还包括:上传模块,用于在所述填充模块根据所述AST生成所述Vue组件的描述文档之后,在设置所述Vue组件与所述描述文档的关联关系之后,将所述Vue组件上传到JavaScript组件库。根据本专利技术的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。根据本专利技术的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。通过本实施例的方案,获取Vue组件的源代码文件,然后解析源代码文件,生成对应的抽象语法树AST,最后根据AST生成Vue组件的描述文档,基于AST生成Vue组件的描述文档,通过静态分析代码内容,可以自动生成描述文档,解决了相关技术中不能自动生成Vue组件的描述文档的技术问题,提高了描述文档的产出效率。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明构成说明书的一部分的附图描述了本专利技术的实施例,并且连同描述一起用于解释本专利技术的原理。参照附图,根据下面的详细描述,可以更加清楚地理解本专利技术,其中:图1是本专利技术实施例的一种Vue组件的文档生成计算机的硬件结构框图;图2是根据本专利技术实施例的一种Vue组件的文档生成方法的流程图;图3是本专利技术实施例中一个AST的示意图;图4是根据本专利技术实施例的Vue组件的文档生成装置的结构框图;图5是本专利技术一个实施方式中的Vue组件的文档生成装置的结构框图。具体实施方式现在将参照附图来详细描述本专利技术的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本专利技术的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比本文档来自技高网...
【技术保护点】
1.一种Vue组件的文档生成方法,其特征在于,包括:/n获取Vue组件的源代码文件,其中,所述Vue组件是组成页面视图的抽象单元;/n解析所述源代码文件,生成对应的抽象语法树AST;/n遍历所述AST中各个树节点;/n根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容,以生成所述Vue组件的描述文档,其中,所述描述文档用于记录所述Vue组件中各个对象的属性信息和交互关系。/n
【技术特征摘要】
1.一种Vue组件的文档生成方法,其特征在于,包括:
获取Vue组件的源代码文件,其中,所述Vue组件是组成页面视图的抽象单元;
解析所述源代码文件,生成对应的抽象语法树AST;
遍历所述AST中各个树节点;
根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容,以生成所述Vue组件的描述文档,其中,所述描述文档用于记录所述Vue组件中各个对象的属性信息和交互关系。
2.根据权利要求1所述的方法,其特征在于,解析所述源代码文件,生成对应的抽象语法树AST,包括:
读取所述源代码文件中的字符串;
识别所述字符串的字符特征;
根据所述字符串和所述字符特征生成所述Vue组件的AST。
3.根据权利要求2所述的方法,其特征在于,根据所述字符串和所述字符特征生成所述Vue组件的AST包括:
基于所述字符特征生成Token序列,其中,所述Token序列包括所述源代码文件中的多个字符串;
根据所述Token序列自顶向下构建所述源代码文件的AST,其中,所述Token序列中的每个字符串对应一个树节点。
4.根据权利要求2所述的方法,其特征在于,根据所述字符串和所述字符特征生成所述Vue组件的AST包括:
基于所述字符特征对所述源代码文件中的多个字符串分别进行词法分析,生成Token序列;
对所述Token序列进行语法分析,将每个字符串的Token转化为树形表达式,以生成所述源代码文件的AST。
5.根据权利要求2所述的方法,其特征在于,识别所述字符串的字符特征包括以下至少之一:
识别所述字符串的props属性;
识别所述字符串的字符标识;
识别所述字符串的注释信息;
识别所述字符串的类型。
6.根据权利要求1所述的方法,其特征在于,根据树节点的节点类型在预设模板文档的描述块中填充所述树节点的节点内容包括:
根据所述树节点的节点类型匹配目标描述块,其中,所述目标描述块包括以下之一:Props,Events,Slots,Methods,所述Props,所述Events,所述Slots是所述Vue组件中函数的应用编程接口API类型,所述Methods是所述Vue组件中方法之间的调用类型;
在所述目标描述块中填充所述树节点的节点内容。
7.根据权利要求1所述的方法,其特征在于,在根据所述AST生成所述Vue组件的描述文档之后,所述方法还包括:
在设置所述Vue组件与所述描述文档的关联关系之后,将所述Vue组件上传到JavaScript组件库。
8.一种Vue组件的文档生...
【专利技术属性】
技术研发人员:霍春阳,
申请(专利权)人:北京健康之家科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。