1.8 KiB
1.8 KiB
timi-tdesign-mobile
Vue 3 移动端通用组件库,依赖 timi-web 提供基础组件和编辑器能力。
本包不依赖 timi-web-api。业务项目可以只安装本包使用通用组件;需要业务接口、领域类型或用户状态时,再单独安装 timi-web-api。
文章和通知组件
ArticleEditor、ArticleView、NotifyEditor、NotifyView 只约束对象的最小字段。Article、Attachment 和 NotifyDetail 支持携带业务自定义字段,不要求对象来自 timi-web-api。
上传和附件地址由业务项目通过回调注入:
<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)。
首次使用先安装文档站依赖:
pnpm -C docs install
启动演示站(默认 http://localhost:3004):
pnpm run dev
构建静态站点:
pnpm run build:doc
演示直接引用 src 源码,改动组件即可热更新;API 表格由 vue-docgen-api 在构建期解析组件源码生成,无需手写。演示统一渲染在手机宽度的视口里——这是移动端组件库,按桌面宽度铺开会失去真实形态。新增组件的完整步骤见文档站的「演示与文档约定」页面。
开发
pnpm install
pnpm run build