
技术摘要:
本发明实施例提供了一种基于Flutter的文档处理方法及装置,应用于Flutter,通过Flutter获取包含样式参数的MarkDown文档,并遍历文档中的UI组件代码,根据样式参数,提取MarkDown文档的样式组件代码以及基础组件代码,并加载样式组件代码与基础组件代码,渲染针对MarkDo 全部
背景技术:
MarkDown是一种轻量级标记语言,其允许开发人员使用易读写的方式对纯文本格 式编写文档,生成的文档文档后缀为.md、.markdown。Flutter是谷歌提供的移动UI框架,可 以快速在IOS和Android上构建高质量的原生用户界面。 随着应用程序的发展,应用程序中用到的UI(User Interface,用户界面)组件也 越来越多。然而在通过Flutter对MarkDown文档进行处理的过程中,若需要显示某个组件样 式或者对应的代码,则需要对样式进行截图,然后将所截取的图片放到工程文档中,并且将 图片以引用的方式放到MarkDown文档中,从而一方面当需要嵌入组件或组件样式改变时, 需要重新截图,工程维护效率低下,另一方面若开发人员想要查看组件对应的实现代码,需 要到庞大的工程文档中进行查找,查找效率低下。
技术实现要素:
本发明实施例提供了一种基于Flutter的文档处理方法,以解决现有技术中 Flutter对MarkDown文档进行处理的过程中,文档中所涉及的UI组件维护效率低下,且无法 快速查看对应组件代码的问题。 相应的,本发明实施例还提供了一种基于Flutter的文档处理装置,用以保证上述 方法的实现及应用。 为了解决上述问题,本发明实施例公开了一种基于Flutter的文档处理方法,包 括: 获取MarkDown文档,所述MarkDown文档包括UI组件代码与样式参数,所述样式参 数包括展示信息; 根据所述样式参数,从所述UI组件代码中,提取所述MarkDown文档的样式组件代 码以及基础组件代码; 加载所述样式组件代码与所述基础组件代码,渲染针对所述MarkDown文档的UI界 面; 展示所述UI界面的预览效果,并基于所述展示信息展示所述样式组件代码。 可选地,所述Flutter包括渲染插件,所述加载所述样式组件代码与所述基础组件 代码,渲染针对所述MarkDown文档对应的UI界面,包括: 将所述基础组件代码拼接成适配于所述Flutter的第一文本,以及将所述样式组 件代码转换为适配于所述Flutter的第二文本; 对所述第一文本与所述第二文本进行拼接,生成兼容列表; 采用所述兼容列表,生成针对所述MarkDown文档的组件列表; 4 CN 111596948 A 说 明 书 2/9 页 通过所述渲染插件渲染所述组件列表对应的UI界面。 可选地,所述样式参数包括路径信息,所述兼容列表包括文本信息,所述采用所述 兼容列表,生成针对所述MarkDown文档的组件列表,包括: 在遍历所述兼容列表的过程中,当所述文本信息为所述第一文本时,则生成与所 述第一文本对应的基础组件标识; 当所述文本信息为第二文本时,则获取与所述MarkDown文档匹配的配置文件,并 从所述配置文件中提取与所述路径信息对应的样式组件标识; 将所述基础组件标识与所述样式组件标识组成所述组件列表。 可选地,所述样式参数包括显示效果信息,所述展示所述UI界面的预览效果,并基 于所述展示信息展示所述样式组件代码,包括: 在所述UI界面中,展示与所述显示效果信息对应的预览效果; 以及当所述展示信息指示展示所述样式组件代码时,则确定当前UI界面中的目标 UI控件,并获取所述目标UI控件对应的目标组件代码,展示所述目标组件代码。 可选地,所述根据所述样式参数,从所述UI组件代码中,提取所述MarkDown文档的 样式组件代码以及基础组件代码,包括: 从所述UI组件代码中,将与所述样式参数匹配的UI组件代码作为所述样式组件代 码; 将与所述样式参数不匹配的UI组件代码作为所述基础组件代码。 本发明实施例还公开了一种基于Flutter的文档处理装置,包括: 文档获取模块,用于获取MarkDown文档,所述MarkDown文档包括UI组件代码与样 式参数,所述样式参数包括展示信息; 组件代码提取模块,用于根据所述样式参数,从所述UI组件代码中,提取所述 MarkDown文档的样式组件代码以及基础组件代码; UI界面渲染模块,用于加载所述样式组件代码与所述基础组件代码,渲染针对所 述MarkDown文档的UI界面; 信息展示模块,用于展示所述UI界面的预览效果,并基于所述展示信息展示所述 样式组件代码。 可选地,所述Flutter包括渲染插件,所述UI界面渲染模块包括: 文本生成子模块,用于将所述基础组件代码拼接成适配于所述Flutter的第一文 本,以及将所述样式组件代码转换为适配于所述Flutter的第二文本; 兼容列表生成子模块,用于对所述第一文本与所述第二文本进行拼接,生成兼容 列表; 组件列表生成子模块,用于采用所述兼容列表,生成针对所述MarkDown文档的组 件列表; UI界面渲染子模块,用于通过所述渲染插件渲染所述组件列表对应的UI界面。 可选地,所述样式参数包括路径信息,所述兼容列表包括文本信息,所述组件列表 生成子模块具体用于: 在遍历所述兼容列表的过程中,当所述文本信息为所述第一文本时,则生成与所 述第一文本对应的基础组件标识; 5 CN 111596948 A 说 明 书 3/9 页 当所述文本信息为第二文本时,则获取与所述MarkDown文档匹配的配置文件,并 从所述配置文件中提取与所述路径信息对应的样式组件标识; 将所述基础组件标识与所述样式组件标识组成所述组件列表。 可选地,所述样式参数包括显示效果信息,所述展示所述UI界面的预览效果,并基 于所述展示信息展示所述样式组件代码,包括: 在所述UI界面中,展示与所述显示效果信息对应的预览效果; 以及当所述展示信息指示展示所述样式组件代码时,则确定当前UI界面中的目标 UI控件,并获取所述目标UI控件对应的目标组件代码,展示所述目标组件代码。 可选地,所述组件代码提取模块具体用于: 从所述UI组件代码中,将与所述样式参数匹配的UI组件代码作为所述样式组件代 码; 将与所述样式参数不匹配的UI组件代码作为所述基础组件代码。 本发明实施例还公开了一种装置,包括: 一个或多个处理器;和 其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行 时,使得所述装置执行如上所述的一个或多个的方法。 本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或 多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。 本发明实施例包括以下优点: 在本发明实施例中,应用于Flutter,通过Flutter获取包含样式参数的MarkDown 文档,并遍历文档中的UI组件代码,根据样式参数,提取MarkDown文档的样式组件代码以及 基础组件代码,并加载样式组件代码与基础组件代码,渲染针对MarkDown文档对应的UI界 面,展示UI界面的预览效果,其中,样式参数中可以包括展示信息,该展示信息可以用于展 示样式组件的代码,从而在Flutter对MarkDown文档进行显示处理的过程中,通过样式参 数,可以快速地获取样式组件的代码并进行渲染展示,在后期工程维护的过程中,可以根据 样式参数针对性地进行UI组件维护,有效提高了工程维护的效率,并且在展示UI组件对应 的显示效果时,还可以展示UI组件对应的代码,显著提高了代码查找的效率。 附图说明 图1是本发明的一种基于Flutter的文档处理方法实施例的步骤流程图; 图2是本发明的一种基于Flutter的文档处理装置实施例的结构框图。