System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及软件管理,具体为一种uni-app组件库架构。
技术介绍
1、uni-app:一个使用vue.js开发前端应用的框架,开发者编写一套代码,可发布到ios、android、web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/qq/快手/钉钉/淘宝)、快应用等多个平台;
2、vue.js:一款用于构建用户界面的javascript框架。它基于标准html、css和javascript构建,并提供了一套声明式的、组件化的编程模型,帮助开发者高效地开发用户界面;
3、sass:一款强化css的辅助工具,它在css语法的基础上增加了变量(variables)、嵌套(nested rules)、混合(mixins)、导入(inline imports)等高级功能,使用sass有助于更好地组织管理样式文件,以及更高效地开发项目;
4、vuepress:一个基于markdown和vue的静态网站生成器,可以快速创建高性能的博客、文档、产品介绍等网站;
5、jenkins:一款开源ci&cd软件,用于自动化各种任务,包括构建、测试和部署软件;
6、github pages:一项静态站点托管服务,它直接从github上的仓库获取html、css和javascript文件,(可选)通过构建过程运行文件,然后发布网站;
7、shell:一个用c语言编写的程序,它是用户使用linux的桥梁。shell既是一种命令语言,又是一种程序设计语言;
9、随着公司业务的不断发展壮大,前端项目越来越复杂,为了保证前端界面/交互的一致性,我们会使用市面上已存在的组件库(如uni-ui)完成开发,但是这些并不能完美满足我们的需要,很多时候我们需要自行设计和开发了一些新组件,这些组件分散在公司各个业务线和前端项目中,版本可能不匹配,文档不全甚至没有文档;这些组件通常只适配了vue.js的某一个大版本,版本不同时将无法使用;这样导致组件分散,可复用性较低,维护成本较高,组件漏洞修复不及时,文档缺漏,添加新组件比较困难。
技术实现思路
1、本申请的目的在于提供一种uni-app组件库架构,以解决上述
技术介绍
中提出的组件的可复用性较低,维护成本较高,版本不同时将无法使用的问题。
2、为实现上述目的,本申请提供如下技术方案:一种uni-app组件库架构,包括组件管理模块、vue.js版本兼容处理模块、组件使用示例管理模块、文档管理模块、新组件开发模块、版本更新模块;
3、所述组件管理模块用于提供组件模板,方便新建组件;
4、所述vue.js版本兼容处理模块用于解决版本响应式api的兼容问题和<scriptsetup>语法的兼容性问题;
5、所述组件使用示例管理模块用于提供示例模板,方便新建组件时快速创建组件示例;
6、所述文档管理模块用于提供文档模板,方便新建组件时快速创建组件文档;
7、所述新组件开发模块用于开发者进行组件功能开发、组件使用示例开发、编写使用文档;
8、所述版本更新模块用于自动更新组件版本并提交到远程代码仓库。
9、优选的,所述组件管理模块中的组件按照uni-app提供的组件加载方案进行组织,放入项目的uni_modules目录,组件统一使用sass编写组件样式。
10、优选的,所述vue.js版本兼容处理模块使用@vue/composition-api解决版本响应式api的兼容问题;使用unplugin-vue2-script-setup解决<script setup>语法的兼容性问题;组件库提供reactivity.js,根据不同的vue.js版本加载响应式api,组件中通过reactivity.js使用响应式api开发。
11、优选的,所述组件使用示例管理模块使用标准的uni-app项目作为示例项目,引用组件库并编写组件使用示例。
12、优选的,所述文档管理模块使用vuepress框架作为文档生成器,配置好文档的功能和排版,提供组件示例效果预览功能。
13、优选的,所述新组件开发模块的开发包括以下步骤:
14、a、开发者执行新组件库提供的新建组件脚本,并根据提示创建新组件;
15、b、新建组件的脚本自动创建组件文件、示例、文档,并将其插入到组件库中;
16、c、开发者开发组件功能、组件示例、完善组件文档。
17、优选的,所述版本更新模块更新时,组件库提供用于版本更新的shell脚本,当组件被开发完成后,开发者可执行该脚本,该脚本会自动更新组件版本并提交到远程代码仓库;如果开发者允许,该脚本会触发jenkins执行组件库构建发布任务,该任务会自动构建组件库并发布到npm,会自动构建组件示例应用和组件文档应用并部署到github pages。
18、与现有技术相比,本申请的有益效果是:
19、1)本专利技术能够整合管理全局可复用组件;提供一键新建组件的能力,可快速开发新组件;提供完善的文档,可快速接入该组件库;提供vue.js不同版本的兼容能力;提供组件定制能力,如全局样式;具备自动化发版能力,快速更新修复漏洞。
20、2)本专利技术兼容vue.js的各个版本,可以满足新旧项目的需求。提供各种自动化脚本,开发效率高,维护更简单,可将多个组件整合到一起,统一修复漏洞、管理文档、发布更新,在公司各个业务线上可快速安装使用这些组件。
本文档来自技高网...【技术保护点】
1.一种uni-app组件库架构,其特征在于,包括组件管理模块、Vue.js版本兼容处理模块、组件使用示例管理模块、文档管理模块、新组件开发模块、版本更新模块;
2.根据权利要求1所述的一种uni-app组件库架构,其特征在于:所述组件管理模块中的组件按照uni-app提供的组件加载方案进行组织,放入项目的uni_modules目录,组件统一使用Sass编写组件样式。
3.根据权利要求2所述的一种uni-app组件库架构,其特征在于:所述Vue.js版本兼容处理模块使用@vue/composition-api解决版本响应式API的兼容问题;使用unplugin-vue2-script-setup解决<script setup>语法的兼容性问题;组件库提供reactivity.js,根据不同的Vue.js版本加载响应式API,组件中通过reactivity.js使用响应式API开发。
4.根据权利要求3所述的一种uni-app组件库架构,其特征在于:所述组件使用示例管理模块使用标准的uni-app项目作为示例项目,引用组件库并编写组件
5.根据权利要求4所述的一种uni-app组件库架构,其特征在于:所述文档管理模块使用VuePress框架作为文档生成器,配置好文档的功能和排版,提供组件示例效果预览功能。
6.根据权利要求1-5任一项所述的一种uni-app组件库架构,其特征在于:所述新组件开发模块的开发包括以下步骤:
7.根据权利要求6所述的一种uni-app组件库架构,其特征在于:所述版本更新模块在设计时是通过组件库提供用于版本更新的shell脚本,当组件被开发完成后,开发者可执行该脚本,该脚本会自动更新组件版本并提交到远程代码仓库;如果开发者允许,该脚本会触发Jenkins执行组件库构建发布任务,该任务会自动构建组件库并发布到npm,会自动构建组件示例应用和组件文档应用并部署到GitHub Pages。
...【技术特征摘要】
1.一种uni-app组件库架构,其特征在于,包括组件管理模块、vue.js版本兼容处理模块、组件使用示例管理模块、文档管理模块、新组件开发模块、版本更新模块;
2.根据权利要求1所述的一种uni-app组件库架构,其特征在于:所述组件管理模块中的组件按照uni-app提供的组件加载方案进行组织,放入项目的uni_modules目录,组件统一使用sass编写组件样式。
3.根据权利要求2所述的一种uni-app组件库架构,其特征在于:所述vue.js版本兼容处理模块使用@vue/composition-api解决版本响应式api的兼容问题;使用unplugin-vue2-script-setup解决<script setup>语法的兼容性问题;组件库提供reactivity.js,根据不同的vue.js版本加载响应式api,组件中通过reactivity.js使用响应式api开发。
4.根据权利要求3所述...
【专利技术属性】
技术研发人员:石朝辉,
申请(专利权)人:深圳市惟客数据科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。