language: {{ $t('lang') }} click me!!
```
### 11. [环境变量配置支持](https://cn.vitejs.dev/guide/env-and-mode.html)
根目录下的 `.env` 用来对项目进行环境变量配置。
### 12. 统一的代码规范与风格支持
由 [eslint](https://github.com/eslint/eslint) 提供的代码规范校验,使用
[prettier](https://github.com/prettier/prettier) 统一代码风格。
由 [husky](https://github.com/typicode/husky) +
[lint-staged](https://github.com/okonet/lint-staged) 提供的 `commit` 时校验。
### 13. [全局通用 axios 请求封装](https://www.axios-http.cn/)
封装了 [axios](https://www.axios-http.cn/),你可以在 `src`
目录下所有文件中使用它 👇
```js
// src 下任何文件都是可用的
req.get('...')
req.post('...', { name: '张三', age: 20 })
// ... 以此类推
```
上述 `req` 是 `axios`
单独创建的实例,具有简单错误提示,以及响应数据转换。具体可见
`src/utils/request.js`。
该 `req` 实例的 `baseURL` 取自环境变量文件 `.env` 的
`VITE_SERVER_PATH`,默认为 `/`,可以按自己需求更改。
具体可见 👉 [axios](https://www.axios-http.cn/)
### 14. [TAURI 构建桌面应用](https://tauri.app/zh-cn/)
tauri 可以构建跨平台的快速、安全、前端隔离应用,构建体积只有数兆
```shell
# 启动tauri开发模式
pnpm dev:tauri
# 构建tauri应用
pnpm build:tauri
```
### 15. 强大的业务组件封装
以 CTable 通用表格为例, 基于 element-plus Table 的封装, 继承全部 API 并提供了更高级别的抽象支持,开箱即用。可以显著提高 CRUD 开发效率,更加专注于页面。
- 自动分页与数据加载
- 内置条件搜索表单,支持展开/收起
- 表格列自定义配置
- 列显示/隐藏
- 列拖拽排序
- 列固定设置(左/右)
- 列宽度调整
- 丰富的工具栏
- 全屏显示
- 刷新数据
- 显示/隐藏搜索
- 数据导出
- 表格尺寸调整
- 列设置
- 单元格编辑功能
- 支持自定义编辑器
- 数据校验
- 行选择功能
- 单选/多选支持
- 自定义选择条件
- 自定义排序
- 状态持久化
- 搜索条件保存
- 列设置保存
- 分页大小保存
- 自适应高度
- 支持自定义工具栏
- 支持数据导出(默认导出 Excel)
##### Props
| 参数名 | 说明 | 类型 | 默认值 |
| -------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------- | ----------------------------------- |
| page-conf | 分页配置,继承自 el-pagination,添加了 action: function/string 配置加载数据方法或接口 | `Object` | - |
| form-conf | 查询表单配置 | `ElFormAttributes` | - |
| model-value | 选中数据数组 | `Array` | - |
| full-value | 是否返回完整行数据,false 时仅返回 row-key | `Boolean` | `false` |
| params | 额外的请求参数 | `Object` | - |
| default-sort | 默认排序字段 | `Object` | - |
| order-key | 排序字段键名 | `({ column, prop, order }) => ({ orderBy: '' })/String` | `orderByColumn` |
| order-v-key | 排序方向键名 | `String` | `isAsc` |
| sort-orders | 排序方式选项数组 | `Array` | `['ascending', 'descending', null]` |
| size | 表格大小 | `String` | `small` |
| title | 表格标题 | `String` | - |
| id | 组件 ID,用于状态持久化 | `String` | - |
| tool-status | 工具栏显示状态配置 | `Object` | 见下方说明 |
| default-form | 表单默认值 | `Object` | `{}` |
| fixed-header | 是否固定表头 | `Boolean` | `true` |
| on-export | 导出方法或接口 | `(params) => Promise