# hello-uview-pro-x
**Repository Path**: anyup/hello-uview-pro-x
## Basic Information
- **Project Name**: hello-uview-pro-x
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-10-26
- **Last Updated**: 2026-10-26
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 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 官方文档](https://x.uviewpro.cn) | 本库的组件 API、主题、国际化等完整文档 |
| [DCloud 插件市场安装](https://ext.dcloud.net.cn/plugin?name=uview-pro-x) | 下载、在线试用与版本说明 |
| [uView Pro 官方文档](https://uviewpro.cn) | 原版文档(本库 API 与其基本一致,可作对照参考) |
| [uni-app x 官方文档](https://doc.dcloud.net.cn/uni-app-x/) | 平台能力、蒸汽模式与 UTS 语言参考 |
## 演示与体验
 |
 |
 |
H5 (浏览器扫码) |
小程序 (微信扫码) |
APP(安卓) (浏览器扫码) |
## AI 辅助开发
uView Pro X 提供配套的 Agent Skills 技能包,安装后 AI 编程助手(Qoder、Claude Code、Cursor 等支持 skills 的客户端)即可掌握本库的页面编写规范、UTS / UCSS 约束、多语言与多主题接入配方、三端兼容避错清单:
```bash
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 插件市场](https://ext.dcloud.net.cn/plugin?name=uview-pro-x) 打开本插件,点击「下载插件并导入 HBuilderX」;也可在 HBuilderX 的插件市场面板搜索 `uview-pro-x` 安装。
导入后组件库位于项目的 `uni_modules/uview-pro-x/` 目录,easycom 规则随包生效。
## 快速上手
### 1. 配置 easycom(pages.json)
```json
{
"easycom": {
"autoscan": true,
"custom": {
"^ux-(.*)": "@/uni_modules/uview-pro-x/components/ux-$1/ux-$1.uvue"
}
}
}
```
配置完成后,`ux-` 开头的组件无需手动 import,直接写标签即可使用。
### 2. 注册插件(main.uts)
注册插件后即可使用国际化、多主题等能力;全部参数可选,不传则使用默认值。
```ts
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. 开始使用
```vue
```
## 进阶用法
### $u 全局工具对象
```ts
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
```ts
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` 等为组件内部工具,二次开发组件时可参考。
### 主题与暗黑模式
```ts
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: [...] })` 中传入主题数组(与内置官方蓝合并,同名覆盖):
```ts
app.use(uViewProX, {
theme: [
{
name: 'purple',
label: '霞光紫',
color: { primary: '#7c3aed' }
}
]
})
```
### 国际化
```ts
import { useLocale } from '@/uni_modules/uview-pro-x'
const { t, setLocale, currentLocale } = useLocale()
t('uModal.title') // 翻译
setLocale('en-US') // 运行时切换语言(自动持久化)
```
自定义语言包在注册插件时传入 `locale.locales` 合并(同名覆盖):
```ts
app.use(uViewProX, {
locale: {
locales: [zhCN, enUS, zhTW], // zhTW 为自定义语言包
defaultLocale: 'zh-CN'
}
})
```
