Skip to content

UniApp 前端规范(uniapp/hiapi-cloud-uniapp)

HTTP:只用 HiapiUtils

ts
import { HiapiUtils } from '@hiapi/hiapi-cloud-web-basic'
  • 禁止直接使用 alovaInstance
  • composable 内也需要显式 import(HiapiUtils 不在自动导入范围)

参数顺序:HiapiUtils.post(url, params, data) —— 第二个是 query

只发 body 时是 HiapiUtils.post(url, {}, payload),三个参数。 写成两个参数的话 payload 会被当成 query,body 空 —— 不报错,但接口什么都没收到。 和 useApi().post(url, data, params) 正好相反。 详见发布包总览 · 一号陷阱

完整方法表、各宿主实现差异、0.0.22 与 0.0.25 的能力差,见 web-basic 包文档

自动导入

以下目录内容在 <script setup>无需 import: src/composables/src/store/src/utils/src/api/,以及 Vue 响应式 API(ref/computed/reactive/onMounted…)。

技术选型(不要另起炉灶)

用途用什么
UI 组件wot-design-uni(wd-* 前缀)
路由uni-mini-router
状态Pinia(defineStore)
HTTPHiapiUtils(见上)

常用命令

bash
pnpm dev:h5 / dev:mp-weixin
pnpm build:mp-weixin
pnpm type-check && pnpm lint:fix

装修组件(uniapp-design)

  • 每个 widget 必须有 index.vue(渲染)+ property.vue(属性编辑器),放 src/components/<project>/<widget>/,并在 src/components/index.ts 注册
  • 命名:hiapi-<project>-<widget>
  • pnpm build:h5 产出 UMD 包,经 UploadPlugin 发布