Skip to content

Welcome to the axe ui wiki!

xing.org1^ edited this page Nov 27, 2020 · 1 revision


基于vue-next的一套PC端前端UI组件库

技术栈

目录结构

.
├─ README.md
├─ package.json
├─ docs # 组件使用文档
│  └─ button.md
├─ packages # 组件源码
│  ├─ button # 单组件
│  │  ├─ src
│  │  │  └─ button.vue
│  │  └─ axe.umd.js
│  └─ axe.umd.js # 全部组件入口
├─ public
│  ├─ img
│  │  └─ icons # 存放pwa 图标
│  ├─ favicon.ico
│  ├─ index.html
│  └─ robots.txt
├─ src # demo样式
│  ├─ components # 存放单元组件使用Demo
│  ├─ App.vue
│  └─ main.ts
├─ styles # 组件样式
│  ├─ common
│  │  ├─ _var.scss # 全局scss变量
│  │  └─ xxx.scss
│  ├─ mixin # 混合
│  │  └─ xxx.scss
│  └─ button.scss # 组件单样式
└─ tests
   └─ utils # 单元测试
      └─ xx.spec.ts # xx模块测试文件

依赖安装

1、环境要求

  • node: 8.9+ (推荐 10+)
  • npm: 6+

Vue CLI requires Node.js version 8.9 or above (v10+ recommended). You can manage multiple versions of Node on the same machine with n, nvm or nvm-windows.

2、升级cli【必要!】

本项目是使用vue-cli搭建项目框架,需要用vue3,得先把vue-cli的版本升级到vue-cli@4.5以上:

npm install -g @vue/cli

因为不更新版本直接install,会报vue-loader-v16相关的错。但是这个问题在vue-cli@4.5.1修复了。所以推荐更新的到最新版~

可以先使用vue --version命令来查看下版本,如果不是4.5+的请一定升级。

3、安装依赖:

npm install
# or
make install
# or
make install-cn # 用淘宝镜像安装

host配置

因为服务启动后需要访问域名,故可以先进行配置:

#### axe-ui
127.0.0.1 dev.axe-ui.com

开始开发

自动化创建新组件

make new <component-name> [组件中文名]

component-name:组件名,中横线命名法。如:button、button-group 组件中文名:可选,建议有。

# demo:
make new radio 单选框

make new radio-group 单选框组

关于make命令的使用见这里wiki

推荐使用make命令开发

启动文档平台

整个axe-ui平台启动,适用源码开发、文档编写。

npm run serve
# or
npm run dev
# or
make dev

浏览地址

启动成功后在浏览器中打开 http://dev.axe-ui.com:8080/ 导航至相应组件即可进行开发。

源码地址:packages/

开发完成后

• 如果是修复 bug,请确保该组件的其他功能没有受到本修复的影响。
• 如果是新增功能,请在文档中补充该功能的 API 说明,并在 TypeScript 定义中添加该 API。视功能的复杂程度,有时还需要添加测试用例和文档例子。

单元测试

在提交代码前,建议首先在本地运行一遍测试。
使用下列命令,即可进行测试,并且在你改变代码后会再次触发测试。

npm run test:ui
# or
make test

代码校验和修复

npm run lint

提交代码

在 commit 代码时,commit message 请遵循以下格式:

<Commit 类型>: <commit 描述>

commit 类型可以是:
Tree:如果本次 commit 修复了某个组件的 bug,或为某个组件添加了 feature,则 commit 类型为该组件的名称
Docs:本次 commit 与文档相关,如优化了文档某处语言描述、新增了一个例子
Chore:本次 commit 与构建、CI 相关,如修改了 webpack 配置、修改了发布脚本
Utils:本次 commit 修改了 src/utils 中的某些内容
Test:本次 commit 修改了 test 中的某些内容
Changelog:一般仅在发布新版本前出现,表示新增了本次发布的更新说明

生产环境(打包+压缩)

生成dist文件

npm run dist
# or
make dist

发包

npm run pub
# or
make pub