# uniapp 常用组件
**Repository Path**: freetimezone/uniapp-common-components
## Basic Information
- **Project Name**: uniapp 常用组件
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-09-11
- **Last Updated**: 2025-12-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# CU-UI
> 贡献者请先阅读 [AGENTS.md](./AGENTS.md),了解项目规则与协作指南。
基于 uni-app 的通用组件库,支持多端兼容(H5、App、各类小程序)。
## 特性
- 🚀 支持 Vue 2 和 Vue 3
- 📱 多端兼容:H5、App、微信小程序、支付宝小程序等
- 🎨 现代化设计风格
- 📦 按需引入,减小包体积
- 🔧 TypeScript 支持
- 📖 详细的文档和示例
- 📦 支持 npm 发布和安装
## 安装
```bash
npm install @jack-huang/cu-ui
# 或
yarn add @jack-huang/cu-ui
# 或
pnpm add @jack-huang/cu-ui
```
## 使用方式
### 方式一:easycom 自动按需引入(推荐)
在 `pages.json` 中配置 easycom:
```json
{
"easycom": {
"autoscan": true,
"custom": {
"^cu-(.*)": "@jack-huang/cu-ui/src/components/cu-$1/cu-$1.vue"
}
}
}
```
然后就可以在页面中直接使用组件,无需引入:
```vue
主要按钮
```
### 方式二:手动按需引入
支持多种按需引入方式:
#### 2.1 从主入口按需引入
```vue
主要按钮
```
#### 2.2 直接引入组件文件
```vue
主要按钮
```
#### 2.3 引入 Vue 文件(uni-app 推荐)
```vue
主要按钮
```
### 方式三:全量引入
#### Vue 3 项目
```js
import { createSSRApp } from 'vue'
import App from './App.vue'
import CuUI from '@jack-huang/cu-ui'
export function createApp() {
const app = createSSRApp(App)
app.use(CuUI)
return {
app
}
}
```
#### Vue 2 项目
```js
import Vue from 'vue'
import CuUI from '@jack-huang/cu-ui'
Vue.use(CuUI)
// 或者在 uni-app 中
export function createApp() {
const app = new Vue({
// ...
})
return {
app
}
}
```
## 组件用法示例
### CuButton 按钮
```vue
默认按钮
自定义 Class
自定义颜色
自定义尺寸
原生透传
禁用
加载中
```
提示:
- `customClass` 支持 String/Array/Object,`customStyle` 支持 String/Object。
- 如需更强覆盖,优先选择 `customStyle`(行内样式)。
- 若要为不同主题(primary/success/...)定义专属禁用配色,可在项目样式中进一步定制。
### CuImage 图片
```vue
```
### CuDropdown 下拉菜单
```vue
更多
```
注意:
- 已在 package.json 的 exports 开放 "./src/*",配合 pages.json 的 easycom 自定义映射:
"^cu-(.*)": "@jack-huang/cu-ui/src/components/cu-$1/cu-$1.vue"
## 组件列表
- [x] Button 按钮(cu-button)
- [x] Image 图片(cu-image)
- [x] Dropdown 下拉菜单(cu-dropdown)
- [ ] Input 输入框
- [ ] Card 卡片
- [ ] Modal 弹窗
- [ ] Loading 加载中
- [ ] Toast 提示
## 开发
```bash
# 克隆项目
git clone
# 进入项目目录
cd uniapp-common-components
# 安装依赖
npm install
# 开发模式(监听文件变化)
npm run dev
# 构建
npm run build
# 发布到 npm
npm publish
```
## 项目结构
```
cu-ui/
├── src/ # 源码目录
│ ├── components/ # 组件目录
│ │ └── cu-button/ # 按钮组件
│ ├── index.js # 入口文件
│ └── index.d.ts # TypeScript 声明文件
├── lib/ # 构建输出目录
├── examples/ # 示例项目
├── package.json # 包配置文件
├── rollup.config.js # 构建配置
└── README.md # 说明文档
```
## 贡献
欢迎提交 Issue 和 Pull Request。
## 许可证
MIT License