【技术实现步骤摘要】
一种VUE文件解析方法和装置
[0001]本专利技术涉及移动互联
,尤其涉及一种VUE文件解析方法和装置。
技术介绍
[0002]本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]VUE是一种用于构建用户界面的JavaScript框架,基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,实现开发用户界面的功能。VUE文件主要由模板(template)、脚本(script)、样式(style)三部分组成,打包工具可以由相关插件将该VUE文件解析成一个javascirpt函数,即浏览器可运行的文件。在无法使用打包工具的情况下,浏览器无法直接使用VUE文件。
[0004]在前后端不分离架构下,前端代码部署在后端框架中,页面使用服务端渲染引擎(如jsp、php、asp等)生成HTML代码返回给浏览器。出于架构限制,前端开发无法使用脚手架,因此部署无法使用打包工具,从而导致了无法解析VUE文件。
[0005]前端虽然可以在页面上通过引入VUE源文件使用相关功能,但是阉割了许多功能,比如无法使用VUE文件进行组件式开发。
[0006]另外,VUE提供了注册组件的方法,具体是在浏览器引入VUE源文件的情况下,可以使用VUE提供的注册组件的方法,该方法可传入组件名称和配置对象;但VUE文件的三部分内容(template、script、style)都是使用js编写,相比于VUE文 ...
【技术保护点】
【技术特征摘要】
1.一种VUE文件解析方法,其特征在于,包括:获取VUE文件的文本值;将VUE文件的文本值转换为节点,遍历节点确定模板元素、脚本元素和样式元素;解析模板元素、脚本元素和样式元素,确定模板解析结果、脚本解析结果和样式解析结果;根据模板解析结果、脚本解析结果和样式解析结果,确定VUE可识别组件;根据VUE可识别组件,对VUE文件进行解析。2.如权利要求1所述的方法,其特征在于,获取VUE文件的文本值,包括:接收VUE文件路径参数;所述VUE文件路径参数是VUE文件在服务器的存储地址;利用暴露加载文件方法,使用浏览器根据VUE文件路径参数访问VUE文件在服务器的存储地址以发送请求,将请求的返回类型设置为文本,获取VUE文件的文本值。3.如权利要求1所述的方法,其特征在于,将VUE文件的文本值转换为节点,遍历节点确定模板元素、脚本元素和样式元素,包括:利用document.implementation.createHTMLDocument函数将VUE文件的文本值转换为节点;遍历节点,识别出模板子节点、脚本子节点和样式子节点;调用预设解析器将模板子节点、脚本子节点和样式子节点转换为模板元素、脚本元素和样式元素;所述模板元素、脚本元素和样式元素为可识别VUE组件。4.如权利要求3所述的方法,其特征在于,解析模板元素,确定模板解析结果,包括:解析模板元素,获取模板元素对应模板子节点的文本属性;将模板元素对应模板子节点的文本属性确定为模板解析结果。5.如权利要求4所述的方法,其特征在于,解析脚本元素,确定脚本解析结果,包括:将脚本元素的导出组件属性设定为统一变量;在预设解析器中设定自定义变量;所述自定义变量用于接收导出的对象;所述自定义变量的结构与统一变量的结构一致;将脚本元素的引入方法设定为暴露加载文件方法;将自定义变量对应的变量名、暴露加载文件方法对应的方法名和脚本元素对应的文本值传入浏览器的Function函数,按照设定为统一变量的导出组件属性,确定VUE组件属性;所述VUE组件属性,包括:数据,生命周期,监听器;所述浏览器的Function函数具备解析javascript文本和设置执行上下文的能力;将所述VUE组件属性确定为脚本解析结果。6.如权利要求1所述的方法,其特征在于,解析样式元素,确定样式解析结果,包括:将样式元素按照全局样式隔离的方式,插入HTML文件的头部标签,确定样式解析结果。7.如权利要求5所述的方法,其特征在于,根据模板解析结果、脚本解析结果和样式解析结果,确定VUE可识别组件,包括:将模板元素对应模板子节点的文本属性和样式解析结果整合至VUE组件属性中,按照暴露加载文件方法,确定VUE可识别组件。8.如权利要求7所述的方法,其特征在于,根据VUE可识别组件,对VUE文件进行解析,包括:
在实例化VUE对象时,调用暴露加载文件方法对VUE可识别组件进行加载,对VUE文件进行解析。9.如权利要求8所述的方法,其特征在于,还包括:对VUE文件的解析结果使用预设工具打包发布。10.一种VUE文件解析装置,其特征在于,包括:文本值获取模块,用于获取VUE文件的文本值;元素确定模块,用于将VUE文件的文本值转换为节点,遍历节点确定模板元素、脚本元素和样式元素;元素解析模块,用于解析模板元素、脚本元...
【专利技术属性】
技术研发人员:邓帅元,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。