更新记录
1.0.0(2026-08-13) 下载此版本
uniappx 基础脚手架,包含功能: 1.基础简单的登录示例代码 2.request请求封装 3.跳转 + 登录白名单/拦截 4.版本更新(多渠道,应用市场, 蒲公英分发或第三方链接等平台) 5.文件的上传下载 6.图像裁剪上传封装 7.主题的切换,包括明暗主题与自定义主题等
平台兼容性
uni-app x(5.24)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | √ | - | - | √ |
其他
| 多语言 | 暗黑模式 | 宽屏模式 |
|---|---|---|
| × | √ | × |
base_uniappx 多端基础脚手架
基于 uni-app x 官方规范(uvue + script setup lang="uts")的多端起步模板。
官方文档:uvue · UTS · downloadFile · uploadFile · installApk · chooseImage
能力一览
| 模块 | 路径 | 说明 |
|---|---|---|
| 环境配置 | config/env.uts |
baseUrl / uploadUrl / 成功码 |
| 更新渠道 | config/update.uts |
商店包名、蒲公英、第三方页、默认渠道 |
| 主题色板 | config/theme.uts |
light / dark / custom tokens、色卡、风格包 |
| 取色工具 | utils/color.uts |
HEX ↔ HSV、色相/SV 色格 |
| 请求 | utils/request.uts |
Token、拦截、业务码 |
| 存储 | utils/storage.uts |
同步读写封装 |
| 路由 | utils/router.uts |
跳转 + 登录白名单/拦截 |
| 外链 | utils/open-link.uts |
商店 scheme / https / 复制兜底 |
| 版本更新 | utils/update.uts |
检查、弹窗、商店/蒲公英/第三方/APK |
| 上传下载 | utils/file-transfer.uts |
uploadFile / downloadFile + 进度 |
| 头像 | utils/avatar.uts |
chooseImage crop + 上传 |
| 主题 Store | store/theme.uts |
切换并持久化 |
| 组件 | scaffold-empty / scaffold-avatar / scaffold-color-picker |
easycom |
| 演示页 | pages/demo/scaffold |
全能力联调 |
目录结构
api/ # user / update
components/ # scaffold-empty、scaffold-avatar、scaffold-color-picker
config/ # env、update、theme
constants/
pages/
index/ login/ demo/ profile/ theme/custom common/webview
store/ # user、app、theme
utils/ # request、storage、router、update、file-transfer、avatar、open-link、color…
外链说明(重要)
当前 uni-app x 内置无 uni.openURL。脚手架默认:
http(s)→ 打开pages/common/webviewmarket:///itms-apps://等 → 复制到剪贴板并 Toast
若要系统浏览器 / 直接拉起商店,请安装插件 uts-openSchema,在 utils/open-link.uts 的 openBySchemaPlugin 中调用 openSchema(url)。
1. 配置 config/update.uts
androidPackage/iosAppStoreId/harmonyStoreUrlpgyerUrl:蒲公英安装页thirdPartyUrl:任意下载说明页defaultChannel:store|pgyer|url|apkautoCheckOnLaunch:启动自动检查(默认false)
2. 业务调用(UTS 禁止传函数引用)
import { fetchUpdateInfo } from '@/api/update.uts'
import { checkAndPromptUpdate, openUpdateChannel } from '@/utils/update.uts'
const info = await fetchUpdateInfo()
await checkAndPromptUpdate(info, false)
openUpdateChannel('store')
openUpdateChannel('pgyer', 'https://www.pgyer.com/yourApp')
openUpdateChannel('url', 'https://example.com/download')
openUpdateChannel('apk', 'https://example.com/app.apk')
3. 后端字段建议(RemoteUpdateInfo)
hasUpdate / force / versionName / versionCode / title / content / channel / apkUrl / storeUrl / pgyerUrl / downloadPageUrl
对接真实接口:改 api/update.uts 中 fetchUpdateInfo() 为 fetchUpdateInfoRemote()。
上传 / 下载
import { uploadFile, downloadFile } from '@/utils/file-transfer.uts'
await uploadFile(localPath, '', 'file', true)
const file = await downloadFile('https://xxx/a.png', true, '')
上传地址默认 appConfig.uploadUrl(config/env.uts)。
头像裁剪上传
import { chooseAndUploadAvatar, pickUploadImageUrl } from '@/utils/avatar.uts'
// 或组件:
// <scaffold-avatar :src="avatar" @success="onOk" />
基于官方 uni.chooseImage 的 crop(方形头像默认 300×300)。不支持裁剪的端会降级为普通选图。
主题
内置明暗
import { toggleTheme, applyTheme, useThemeStore } from '@/store/theme.uts'
toggleTheme()
applyTheme('dark')
用户自定义
入口页:pages/theme/custom
import { applyCustomPrimary, applyCustomTheme, resetTheme } from '@/store/theme.uts'
applyCustomPrimary('#34c759') // 预设/自定义主色
applyCustomTheme({
baseMode: 'light',
primary: '#ff3b30',
background: '',
surface: '',
text: ''
})
resetTheme()
- 模式:
light/dark/custom - 自定义会持久化到
THEME_CUSTOM - 页面用
:style="{ backgroundColor: theme.tokens.xxx }"绑定;导航栏由applyNavigationBarTheme同步 - 自定义页通过
scaffold-color-picker支持 HEX 输入、色相条、SV 色格与常用色(非仅色卡点选)
演示路径
- 首页:看环境 / 版本 / 主题,可切换 light/dark
- 「脚手架能力演示」:请求、存储、检查更新、商店/蒲公英/第三方、下载、头像、拦截
- 登录后进个人中心:头像裁剪上传并写回用户信息
编码规范
- 页面唯一
<script setup lang="uts"> - UTS 强类型,不用
undefined(用null) - 禁止把函数引用当参数传递(如
fn应先await fn()再传结果) - 禁止
return Promise.reject(...)(在new Promise内reject) - 不要给官方 API 传
null可选字段;setStorageSync的 data 必须非 null - 不要把
NavigateToOptions当成UTSJSONObject(会 ClassCastException,跳转全挂) - 登录拦截依赖
utils/router封装,勿对navigateTo挂错误类型的全局拦截器 - 端差异收敛到
utils/platform/open-link/update @/+.uts后缀引用模块
对接真实后端时
- 改
config/env.uts、config/update.uts fetchUpdateInfo切远程;登录 Mock 换真实接口- 上传域名、小程序 download/upload 合法域名、Android 安装未知来源权限按各端要求配置
说明
脚手架保持零三方依赖。若需更强 Schema(地图/多商店),可自行接入插件市场 uts-openSchema,替换 utils/open-link.uts 内部实现即可。

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
赞赏(0)
下载 142
赞赏 1
下载 12504411
赞赏 1941
赞赏
京公网安备:11010802035340号