更新记录
1.0.1(2026-10-26)
- 优化README.md,添加组件说明
- 添加官方文档链接
- 添加示例演示入口
1.0.0(2026-10-26)
首个正式版本,作为后续迭代的功能基线。
组件
首批 76 个 ux-* 组件(含子组件)完成从 uView Pro 到 uni-app x 的迁移,按 7 个分类提供 61 个组件示例页:
- 基础(8 个示例页):
ux-icon、ux-image、ux-button、ux-cell-group/ux-cell-item、ux-badge、ux-tag、ux-text、ux-avatar - 表单(13 个示例页):
ux-form/ux-form-item、ux-input、ux-textarea、ux-select、ux-picker、ux-rate、ux-search、ux-number-box、ux-keyboard/ux-number-keyboard/ux-car-keyboard、ux-checkbox/ux-checkbox-group、ux-radio/ux-radio-group、ux-switch、ux-slider - 数据展示(5 个示例页):
ux-line-progress、ux-circle-progress、ux-count-to、ux-count-down、ux-swiper - 反馈(14 个示例页):
ux-action-sheet、ux-toast、ux-notice-bar(含ux-row-notice、ux-column-notice)、ux-alert-tips、ux-top-tips、ux-collapse/ux-collapse-item、ux-popup、ux-swipe-action、ux-modal、ux-mask、ux-loading、ux-loadmore、ux-empty、ux-no-network - 布局(6 个示例页):
ux-line、ux-card、ux-grid/ux-grid-item、ux-divider、ux-row/ux-col、ux-section - 导航(8 个示例页):
ux-tabbar、ux-back-top、ux-navbar、ux-tabs、ux-subsection、ux-steps/ux-step、ux-link、ux-pagination - 其他(7 个示例页):
ux-gap、ux-safe-bottom、ux-status-bar、ux-transition、ux-skeleton、ux-full-screen、ux-config-provider;另有ux-overlay、ux-sticky、ux-waterfall等基础能力组件
工具与 Hooks
- 9 个工具函数示例页:
addUnit、test、toStyle、color、trim、debounce、throttle、deepClone、deepMerge - 3 个组合式 Hooks:
useDebounce、useThrottle、useLocale - 全局
$u工具集与useTheme/useLocale等能力开箱可用
样式与主题
- 组件样式基于 UCSS 重写,仅使用 flex 布局,适配 App / H5 / 微信小程序
- 组件专属类名统一由
useBEM生成(ux-前缀),样式隔离,避免与业务类名冲突 - 主题变量集中在
theme.scss($u-*),支持多主题与暗黑模式
国际化
- 内置中文 / 英文语言包,通过
ux-config-provider与useLocale全局切换
文档
- 中英文双语文档站上线,包含组件说明、示例源码与 API 表
- 组件页内嵌 H5 在线预览,可直接在文档中交互体验
平台兼容性
uni-app x(5.03)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| √ | √ | √ | √ | √ | √ |
其他
| 多语言 | 暗黑模式 | 宽屏模式 | 蒸汽模式 |
|---|---|---|---|
| √ | √ | √ | × |
uView Pro X
uView Pro 的 uni-app x 版本 —— 基于 uni-app x 构建的跨端 UI 组件库。80+ 高质量组件、完整的主题 / 国际化 / 工具 / Hooks 体系,配套多主题、暗黑模式、国际化,一套代码支持 App(Android / iOS / 鸿蒙)、H5、微信小程序。
| App-Android | App-iOS | App-鸿蒙 | H5 | 微信小程序 |
|---|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ | ✅ |
官方文档
| 文档 | 说明 |
|---|---|
| uView Pro X 官方文档 | 本库的组件 API、主题、国际化等完整文档 |
| DCloud 插件市场安装 | 下载、在线试用与版本说明 |
| uView Pro 官方文档 | 原版文档(本库 API 与其基本一致,可作对照参考) |
| uni-app x 官方文档 | 平台能力、蒸汽模式与 UTS 语言参考 |
演示与体验
![]() |
![]() |
![]() |
| H5 (浏览器扫码) |
小程序 (微信扫码) |
APP(安卓) (浏览器扫码) |
AI 辅助开发
uView Pro X 提供配套的 Agent Skills 技能包,安装后 AI 编程助手(Qoder、Claude Code、Cursor 等支持 skills 的客户端)即可掌握本库的页面编写规范、UTS / UCSS 约束、多语言与多主题接入配方、三端兼容避错清单:
pnpx skills add uview-pro/skills
安装后在 AI 助手中直接描述需求(例如「用 uview-pro-x 写一个带主题切换的登录页」),助手会按技能内的规范生成可编译的页面代码,并校验 ux-* 组件的属性用法。
交流反馈
![]() |
![]() |
![]() |
| 微信 (微信扫码) |
Q-Q (Q-Q扫码) |
源码咨询 (微信扫码) |
核心特性
| 特性 | 说明 |
|---|---|
| 80+ 高质量组件 | 覆盖基础 / 表单 / 数据 / 反馈 / 布局 / 导航 / 其他七大分类,移动端常见场景开箱即用 |
| 蒸汽模式(vapor)优先 | 面向 uni-app x 蒸汽模式开发:App 端字节码渲染,仅使用组合式 API 与简单类名选择器,性能与多端一致性优先 |
| 样式隔离 2.0 | 采用 styleIsolation 策略 2.0,组件样式与业务样式互不污染,无需担心全局选择器串色 |
| 多语言开发(UTS / TS / JS) | 组件与页面以 UTS 强类型编写,接口均带完整类型定义,同时兼容 TypeScript / JavaScript 写法;类型错误在编译期暴露而非运行时 |
| 多主题与暗黑模式 | 内置官方蓝主题,支持自定义多主题、亮色 / 暗黑 / 跟随系统切换,选择自动持久化,App 端原生背景联动 |
| 国际化 i18n | 内置中文 / 英文 / 法文语言包,支持合并扩展自定义语言包,运行时切换并持久化 |
| $u 全局工具对象 | 20+ 工具方法:正则校验 test、单位转换 addUnit、防抖节流、深克隆 / 深合并、颜色处理、时间格式化等 |
| 16 个内置 Hooks | 主题 useTheme、国际化 useLocale、倒计时 useCountDown、防抖节流、弹层状态 usePopup 等 |
| easycom 开箱即用 | ux- 前缀组件自动注册,无需手动 import 与局部注册 |
组件总览
标签名 =
ux-+ 组件名,例如ux-icon、ux-button。
| 分类 | 数量 | 组件 |
|---|---|---|
| 基础 | 11 | icon、image、button、cell-item、cell-group、badge、tag、text、avatar、row、col |
| 表单 | 18 | form、form-item、input、textarea、select、picker、rate、search、number-box、checkbox、checkbox-group、radio、radio-group、switch、slider、keyboard、number-keyboard、car-keyboard |
| 数据 | 4 | line-progress、circle-progress、count-to、count-down |
| 反馈 | 17 | action-sheet、toast、notice-bar、column-notice、row-notice、collapse、collapse-item、popup、swipe-action、modal、overlay、loading、loadmore、empty、alert-tips、full-screen、top-tips |
| 布局 | 13 | line、card、grid、grid-item、divider、section、gap、mask、no-network、skeleton、swiper、sticky、waterfall |
| 导航 | 9 | tabbar、back-top、navbar、tabs、subsection、steps、step、link、pagination |
| 其他 | 4 | safe-bottom、status-bar、transition、config-provider |
安装
前置条件:支持 uni-app x 的 HBuilderX(或其他可编译 uni-app x 项目的环境)。
在 DCloud 插件市场 打开本插件,点击「下载插件并导入 HBuilderX」;也可在 HBuilderX 的插件市场面板搜索 uview-pro-x 安装。
导入后组件库位于项目的 uni_modules/uview-pro-x/ 目录,easycom 规则随包生效。
快速上手
1. 配置 easycom(pages.json)
{
"easycom": {
"autoscan": true,
"custom": {
"^ux-(.*)": "@/uni_modules/uview-pro-x/components/ux-$1/ux-$1.uvue"
}
}
}
配置完成后,ux- 开头的组件无需手动 import,直接写标签即可使用。
2. 注册插件(main.uts)
注册插件后即可使用国际化、多主题等能力;全部参数可选,不传则使用默认值。
import App from './App.uvue'
import uViewProX, { zhCN, enUS } from './uni_modules/uview-pro-x'
import { createSSRApp } from 'vue'
export function createApp() {
const app = createSSRApp(App)
app.use(uViewProX, {
// 国际化:注册语言包并指定默认语言
locale: {
locales: [zhCN, enUS],
defaultLocale: 'zh-CN'
}
})
return { app }
}
3. 开始使用
<template>
<view class="page">
<ux-input v-model="keyword" placeholder="请输入关键词" border />
<ux-button type="primary" text="提交" @click="onSubmit" />
<ux-tag text="新" type="error" />
</view>
</template>
<script setup lang="uts">
import { $u } from '@/uni_modules/uview-pro-x'
const keyword = ref('')
const onSubmit = () => {
if (!$u.test.mobile('***')) {
uni.showToast({ title: '请输入正确的手机号', icon: 'none' })
return
}
console.log('提交内容:' + keyword.value)
}
</script>
进阶用法
$u 全局工具对象
import { $u } from '@/uni_modules/uview-pro-x'
| 常用能力 | 说明 |
|---|---|
$u.test.mobile('138…') |
手机号、邮箱、身份证、URL 等 20+ 种正则校验 |
$u.addUnit(20) |
数值转带单位字符串(不传单位默认补 px) |
$u.toStyle(obj) |
样式对象转样式字符串 |
$u.debounce / $u.throttle |
防抖 / 节流函数包装 |
$u.deepClone(obj) / $u.deepMerge(a, b) |
深克隆 / 深合并 |
$u.hexToRgba('#2979ff', 0.3) |
十六进制颜色转 rgba |
$u.color.primary |
读取当前主题色(响应式,随主题 / 暗黑切换自动更新) |
内置 Hooks
import { useTheme, useLocale, useCountDown } from '@/uni_modules/uview-pro-x'
| Hook | 用途 |
|---|---|
useTheme |
主题切换、暗黑模式、CSS 变量生成 |
useLocale |
国际化翻译、语言切换与持久化 |
useCountDown |
倒计时 |
useDebounce / useThrottle |
防抖 / 节流 |
usePopup |
弹窗开关状态 |
useNotice |
滚动通告栏状态 |
useRect |
元素几何信息查询 |
useTouch |
触摸手势(滑动距离 / 方向) |
useSafeArea |
底部安全区高度 |
useWindowInfo |
屏幕 / 窗口信息 |
另有
useBEM、useStyle、useParent、useChildren、useConfig等为组件内部工具,二次开发组件时可参考。
主题与暗黑模式
import { useTheme } from '@/uni_modules/uview-pro-x'
const { setTheme, setDarkMode, toggleDarkMode, isInDarkMode } = useTheme()
setTheme('purple') // 切换主题(名称需已注册:内置 'uviewpro' 或自定义主题)
setDarkMode('dark') // 'light' | 'dark' | 'auto'(跟随系统)
toggleDarkMode() // 亮暗一键切换
自定义多主题:在 app.use(uViewProX, { theme: [...] }) 中传入主题数组(与内置官方蓝合并,同名覆盖):
app.use(uViewProX, {
theme: [
{
name: 'purple',
label: '霞光紫',
color: { primary: '#7c3aed' }
}
]
})
国际化
import { useLocale } from '@/uni_modules/uview-pro-x'
const { t, setLocale, currentLocale } = useLocale()
t('uModal.title') // 翻译
setLocale('en-US') // 运行时切换语言(自动持久化)
自定义语言包在注册插件时传入 locale.locales 合并(同名覆盖):
app.use(uViewProX, {
locale: {
locales: [zhCN, enUS, zhTW], // zhTW 为自定义语言包
defaultLocale: 'zh-CN'
}
})

收藏人数:
https://github.com/anyup/hello-uview-pro-x
购买源码授权版(
试用
使用 HBuilderX 导入示例项目
赞赏(0)






下载 7046
赞赏 87
下载 12715712
赞赏 1958
赞赏
京公网安备:11010802035340号