fes.js/docs/zh/guide/contributing.md
2021-03-05 18:58:14 +08:00

2.5 KiB
Raw Blame History

贡献指南

概览

项目仓库借助于 Yarn Classic 工作区 来实现 Monorepo ,在 packages 目录下存放了多个互相关联的独立 Package 。

  • @fesjs/create-fes-app: 创建项目模板模块。提供create-fes-app命令,提供创建多种类型项目模板的能力。

  • @fesjs/fes: 入口模块。提供fes命令和 API 入口。

  • @fesjs/compiler: 编译时插件管理模块。定义插件的生命周期、插件配置、插件通讯机制等。

  • @fesjs/runtime: 运行时插件模块。集成了vue-router定义运行时插件生命周期、插件通讯机制。

  • @fesjs/preset-build-in: 内置插件集。包含devbuild等命令集成webpack5+babel提供方便编写插件的API入口文件处理路由处理等能力。

  • @fesjs/fes-template: 适用于PC类型的模板项目。

  • @fesjs/fes-template-h5: 适用于H5类型的模板项目。

  • @fesjs/plugin-${name}: 官方插件。

  • @fesjs/fes: 是 @fesjs/compiler + @fesjs/runtime + @fesjs/preset-build-in 的封装。用户只需要安装此依赖和额外的插件或者插件集。

开发配置

开发要求:

克隆代码仓库,并安装依赖:

yarn

监听源文件修改:

yarn build

打开另一个终端,开始开发项目文档网站:

yarn docs:dev

本项目开发使用的一些主要工具:

开发脚本

yarn build

build 命令会使用 father-build 将 ES6 编译为 CommonJS。

本项目在编写Node端的代码时也用ES6所以你在克隆代码仓库后可能需要先执行该命令来确保项目代码可以顺利运行因为编译后的 JS 文件被 .gitignore 排除在仓库以外了。

yarn docs:dev

docs: 前缀表明,这些命令是针对文档 (documentation) 进行操作的,即 docs 目录。
使用 Vue Press在本地启动文档网站服务器用于实时查看文档效果。

调试功能

在开发完插件代码后需要在template项目中验证功能

  • 进入packages/template目录
  • 执行yarn dev