[发明专利]一种适用于多种框架的语法转换编译系统及方法在审
申请号: | 201910567314.2 | 申请日: | 2019-06-27 |
公开(公告)号: | CN110362312A | 公开(公告)日: | 2019-10-22 |
发明(设计)人: | 张福军;丁立;李祥兵;刘福林;罗豪;梁庆智 | 申请(专利权)人: | 绿漫科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/445 |
代理公司: | 浙江千克知识产权代理有限公司 33246 | 代理人: | 赵芳;张瑜 |
地址: | 310000 浙江省杭州市西湖区文三路47*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 编译系统 语法转换 加载 预处理 语法转换模块 预处理模块 代码风格 数据结构 文件加载 文件配置 重构 开发 替代 学习 | ||
本发明公开了一种适用于多种框架的语法转换编译系统及方法。其中,本发明涉及的一种适用于多种框架的语法转换编译系统,包括:文件加载预处理模块,用于对不同类型的文件进行加载预处理;语法转换模块,用于接收加载预处理后的文件,并将加载处理后的文件配置为系统所需的数据结构。本发明可以在不同框架的项目中都使用vue代码风格进行开发,降低开发者的学习成本,使用vue替代knockout的重构过程会更加高效敏捷。
技术领域
本发明涉及计算机技术领域,尤其涉及一种适用于多种框架的语法转换编译系统及方法。
背景技术
knockout是一个典型的MVVM(Module-View-ViewModule)框架,可以帮助用户创建复杂的前端交换逻辑,knockout是纯JavaScript框架,独立运行,体积小(压缩后13kb),支持所有主流浏览器。
在后台管理系统的前端项目使用knockout构建,knockout是MVVM领域内的先驱,但是随着前端技术的更新迭代,knockout的发展相对缓慢,它的生态系统不活跃,组件系统缺少完备的生命周期事件方法,调用子组件的方式略显复杂。这些问题都会直接影响开发效率,并且对于新加入团队的开发者来说,增加了学习成本,不仅要熟悉业务,还要学习使用knockout框架。如果选用新框架vue对整个项目进行一次重构,在这个过程中,新的业务需求需要写两套代码。
如公开号为CN108984160A的专利公开了一种基于组件化的信息化快速开发框架,包括前端框架/库、组件池、配置文件、智能组件服务、组件加载器、组件解释器、数据服务器;前端框架/库集合用于构建不同的组件,包括市场上主流和非主流的前端框架,并可以根据具体需要进行整合和扩展;组件池用来统一维护使用前端框架/库构建的组件,每个组件都会带有属性信息,所述属性信息包括规则编号、类型、版本号、来源、适用范围、兼容性;所述智能组件服务用于接收配置文件中请求的一种或一类组件;所述组件加载器主要用来加载组件。本发明可解决现有信息化开发系统中组件化粒度粗、复用率低、维护困难、操作方式单一、在异构组件化框架/库缺少统一标准,存在资源冲突的问题。其虽然可以解决现有技术中资源冲突的问题,但是依然不能像Vue组件一样来写knockout的组件。
发明内容
本发明的目的是针对现有技术的缺陷,提供了一种适用于多种框架的语法转换编译系统及方法,可以在不同框架的项目中都使用vue代码风格进行开发,降低开发者的学习成本,使用vue替代knockout的重构过程会更加高效敏捷。
为了实现以上目的,本发明采用以下技术方案:
一种适用于多种框架的语法转换编译系统,包括:
文件加载预处理模块,用于对不同类型的文件进行加载预处理;
语法转换模块,用于接收加载预处理后的文件,并将加载处理后的文件配置为系统所需的数据结构。
进一步的,所述文件加载预处理模块采用的是knockout-loader对不同类型的文件进行加载预处理处理的。
进一步的,所述对文件进行加载预处理包括对文件的模板template、脚本script、样式style的预处理。
进一步的,所述对文件进行加载预处理还包括将HTML中的vue指令语法替换为knockout指令语法。
进一步的,所述语法转换模块具体包括:
拼接模块,用于将style直接拼接到template中;
第一提取模块,用于将脚本script中的数据data、接收外部数据props、计算属性computed和观察对象watch提取出来,并绑定vue组件上下文this;
第二提取模块,用于将脚本script中的方法methods提取出来,并绑定vue组件上下文this;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于绿漫科技有限公司,未经绿漫科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910567314.2/2.html,转载请声明来源钻瓜专利网。