掘金 人工智能 06月19日 09:58
AI + 低代码 技术揭秘(十三):CLI 和构建系统
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文档深入介绍了VTJ(一个用于构建多平台应用的框架)的开发工具,包括命令行界面(CLI)、构建过程和项目基架系统。它详细阐述了开发者如何通过CLI命令与VTJ交互,monorepo构建系统的工作机制,以及如何创建和配置新的VTJ项目。此外,还提供了关于CLI包结构、构建系统组件、项目脚手架系统、开发工作流程脚本、构建管道流、构建目标和平台支持、构建配置管理、检测和质量保证等方面的详细信息,并给出了源码仓库的链接。

💻 VTJ的命令行界面(CLI)作为核心构建工具,通过@vtj/cli软件包实现,提供Vite配置、TypeScript编译、测试和开发服务器管理等功能。CLI使用unbuild构建,以确保最佳Node.js兼容性。

📦 VTJ使用由Lerna和PNPM管理的monorepo结构,实现跨包的协调开发和同步发布。构建系统确保所有软件包版本同步,目前monorepo版本为0.12.40。

🚀 create-vtj软件包提供项目基架功能,支持多种项目类型,并配置了相应的依赖项和构建配置,方便开发者快速引导新项目。

⚙️ 开发工作流程由根package.json中的npm脚本编排,涵盖开发、构建和部署。构建管道确保monorepo中所有软件包的协调构建和同步发布。

🌐 VTJ支持多个构建目标和部署平台,如Web、H5、Uni-App、专业平台等,每个平台都有特定的构建配置和输出格式。

✅ 构建系统集成Vitest作为测试运行程序,提供单元、集成测试、覆盖率报告和持续集成。CLI软件包提供统一的测试配置,确保整个生态系统的测试一致性。

本文档介绍了支持 VTJ 开发和部署的命令行界面工具、构建过程和项目基架系统。它解释了开发人员如何通过 CLI 命令与 VTJ 交互,monorepo 构建系统如何工作,以及如何创建和配置新项目。

有关核心引擎体系结构的信息,请参阅核心体系结构 。有关多平台部署的详细信息,请参阅平台实现 。

CLI 包体系结构

VTJ CLI 作为 @vtj/cli 软件包实现,该软件包用作整个 VTJ 生态系统的中央构建工具。CLI 提供了全面的构建功能,包括 Vite 配置、TypeScript 编译、测试实用程序和开发服务器管理。

CLI 包结构

CLI 包通过 vtj 二进制命令公开其功能,主要实现使用 unbuild 构建以实现最佳 Node.js 兼容性。

Monorepo 构建系统

VTJ 使用由 Lerna 和 PNPM 管理的复杂 monorepo 结构,支持跨所有软件包的协调开发和同步发布。

构建系统组件

构建系统确保所有软件包保持版本同步,目前整个 monorepo 的版本为 0.12.40。

项目脚手架系统

create-vtj 软件包提供项目基架功能,允许开发人员使用预配置的模板快速引导新的 VTJ 项目。

脚手架架构

基架系统支持多种项目类型,每种类型都配置了适用于其目标平台的适当依赖项和构建配置。

开发工作流程脚本

根 package.json 定义了一组全面的 npm 脚本,用于编排整个 VTJ 生态系统中的开发、构建和部署工作流程。

开发脚本

脚本类别脚本示例目的
开发服务器dev, pro:dev, app:dev启动不同平台的开发服务器
构建命令build, pro:build, web:build构建生产分发
测试test, cli:test, coverage运行测试套件并生成覆盖率报告
包管理setup, clean, reset管理依赖项和工作区状态
出版patch, minor, prerelease版本管理和包发布

构建管道流

构建管道可确保 monorepo 中所有软件包之间的协调构建和同步发布。

构建目标和平台支持

VTJ 支持多个构建目标和部署平台,每个平台都有特定的构建配置和输出格式。

平台构建矩阵

平台构建工具输出格式目标环境
Web@vtj/webViteES 模块 + UMD现代浏览器
H5 移动版@vtj/h5ViteES 模块 移动网页
Uni-App@vtj/uni-appUni-App CLIMultipleiOS/Android/小程序
专业的@vtj/proVite企业平台
组件库@vtj/uiunbuildES 模块 + CJS库分发

构建配置管理

检测和质量保证

构建系统使用 Vitest 作为主要测试运行程序,集成了全面的测试功能,并支持覆盖率报告和持续集成。

测试基础设施

元件工具目的
测试运行程序vitest@~3.1.2单元和集成测试
覆盖@vitest/coverage-v8代码覆盖率分析
浏览器测试jsdom@~26.1.0Vue 组件的 DOM 模拟
Vue 测试@vue/test-utils@~2.4.5Vue 组件测试工具

CLI 软件包提供统一的测试配置,这些配置可以被 monorepo 中的所有软件包继承,从而确保整个 VTJ 生态系统的测试实践一致。

源码仓库

gitee.com/newgateway/…

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

VTJ CLI 构建系统 项目基架 多平台
相关文章