【技术实现步骤摘要】
一种页面开发方法、装置、设备及存储介质
[0001]本专利技术实施例涉及页面开发
,尤其涉及一种页面开发方法、装置、设备及存储介质。
技术介绍
[0002]随着前端框架的流行,它的生态环境所包含的资源越来越丰富。以电子商务toB业务为例,页面开发的类型可以归结为门户页、查询页、表单页、详情页和图表页等等。现有的页面开发主要采用静态模板页的方式,开发人员在静态模板页的基础上,根据业务需求进行业务代码内容的补充。
[0003]在实现本专利技术的过程中,发现现有技术中至少存在以下技术问题:
[0004]静态模板页只能提供一个很基础的框架,页面开发过程中的内容模板(template)和JS(JavaScript)代码仍需要开发人员手动编写,导致页面开发的效率仍很低。
技术实现思路
[0005]本专利技术实施例提供了一种页面开发方法、装置、设备及存储介质,以提高页面开发的效率。
[0006]第一方面,本专利技术实施例提供了一种页面开发方法,该方法包括:
[0007]获取用户基于交互界面选择输入的至少一个页面组件及各所述页面组件分别对应的元素参数数据;
[0008]基于各所述页面组件分别对应的元素参数数据,生成当前页面对应的抽象语法树;
[0009]基于所述抽象语法树,分别确定所述当前页面对应的内容模板和JS逻辑数据,并基于所述内容模板和JS逻辑数据,确定所述当前页面对应的页面开发文件。
[0010]第二方面,本专利技术实施例还提供了一种页面开发装置, ...
【技术保护点】
【技术特征摘要】
1.一种页面开发方法,其特征在于,包括:获取用户基于交互界面选择输入的至少一个页面组件及各所述页面组件分别对应的元素参数数据;基于各所述页面组件分别对应的元素参数数据,生成当前页面对应的抽象语法树;基于所述抽象语法树,分别确定所述当前页面对应的内容模板和JS逻辑数据,并基于所述内容模板和JS逻辑数据,确定所述当前页面对应的页面开发文件。2.根据权利要求1所述的方法,其特征在于,所述基于所述抽象语法树,分别确定所述当前页面对应的内容模板和JS逻辑数据,包括:通过调用内容模板创建函数,基于所述抽象语法树中各页面节点分别对应的元素参数数据,生成当前页面对应的内容模板;通过调用JS创建函数,基于所述抽象语法树中各页面节点分别对应的元素参数数据,生成当前页面对应的JS逻辑数据。3.根据权利要求2所述的方法,其特征在于,所述基于所述抽象语法树中各页面节点分别对应的元素参数数据,生成当前页面对应的内容模板,包括:针对所述抽象语法树中的每个页面节点,通过调用节点创建函数,基于所述页面节点对应的元素参数数据,生成与所述页面节点对应的字符串节点;其中,所述字符串节点对应的结构数据为语法字符串参数数据;通过调用stringify字符串函数,基于各所述字符串节点分别对应的语法字符串参数数据,生成当前页面对应的内容模板。4.根据权利要求3所述的方法,其特征在于,所述基于所述页面节点对应的元素参数数据,生成与所述页面节点对应的字符串节点,包括:将所述页面节点对应的元素参数数据中的组件标签名、props支撑参数和子元素参数分别赋值给所述字符串节点对应的语法字符串参数数据中的元素标签名、attrs属性参数和子元素参数;基于所述元素参数数据中的表单项元素参数和行内元素参数,生成与所述字符串节点对应的追加子元素参数,并将所述追加子元素参数添加到所述语法字符串参数数据中的子元素参数中。5.根据权利要求4所述的方法,其特征在于,所述基于所述元素参数数据中的表单项元素参数和行内元素参数,生成与所述字符串节点对应的追加子元素参数,包括:基于所述表单项元素参数和行内元素参数,分别判断所述页面组件是否属于表单项元素或是否属于行内元素;如果所述页面组件属于表单项元素,则通过调用creatFormItemCol表单项创建函数,生成与所述字符串节点对应的追加子元素参数;如果所述页面组件属于行内元素,则通过调用creatDisplayInline行内元素创建函数,生成与所述字符串节点对应的追加子元素参数。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:如果所述页面组件不属于表单项元素且不属于行内元素,则判断所述抽象语法树是否仅包含一个属于表单项元素的容器组件;如果是,则通过调用creatInsertFrom嵌入表单创建函数,生成与所述字符串节点对应
的追加子元素参数;如果否,则通过调用creatSingleCol单元素创建函数,生成与所述字符串节点对应的追加子元素参数。7.根据权利要求2所述的方法,其特征在于,所述基于所述抽象语法树中各页面节点分别对应的元素参数数据...
【专利技术属性】
技术研发人员:宋啊礼,
申请(专利权)人:北京京东振世信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。