Files
timi-tdesign-mobile/README.md
T
2026-09-21 16:05:14 +08:00

59 lines
1.8 KiB
Markdown

# timi-tdesign-mobile
Vue 3 移动端通用组件库,依赖 `timi-web` 提供基础组件和编辑器能力。
本包不依赖 `timi-web-api`。业务项目可以只安装本包使用通用组件;需要业务接口、领域类型或用户状态时,再单独安装 `timi-web-api`。
## 文章和通知组件
`ArticleEditor`、`ArticleView`、`NotifyEditor`、`NotifyView` 只约束对象的最小字段。`Article`、`Attachment` 和 `NotifyDetail` 支持携带业务自定义字段,不要求对象来自 `timi-web-api`。
上传和附件地址由业务项目通过回调注入:
```vue
<article-editor
:model-value="article"
:upload-image="uploadImage"
:upload-video="uploadVideo"
:resolve-attachment-url="resolveAttachmentUrl"
@update:model-value="article = $event"
/>
<article-view
:article="article"
:resolve-attachment-url="resolveAttachmentUrl"
/>
```
通知组件使用同样的 `uploadImage`、`uploadVideo` 和 `resolveAttachmentUrl` 回调。没有附件上传需求时,可以不传上传回调。
## 文档与演示
组件演示与 API 文档由 VitePress 驱动,源码位于 `docs/`。它作为独立子包维护,依赖版本与根项目隔离(根项目用 Vite 7,文档站需要 VitePress 自带的 Vite 5)。
首次使用先安装文档站依赖:
```bash
pnpm -C docs install
```
启动演示站(默认 http://localhost:3004):
```bash
pnpm run dev
```
构建静态站点:
```bash
pnpm run build:doc
```
演示直接引用 `src` 源码,改动组件即可热更新;API 表格由 `vue-docgen-api` 在构建期解析组件源码生成,无需手写。演示统一渲染在手机宽度的视口里——这是移动端组件库,按桌面宽度铺开会失去真实形态。新增组件的完整步骤见文档站的「演示与文档约定」页面。
## 开发
```bash
pnpm install
pnpm run build
```