0.2.2 • Published 6h ago
bj-web-components
Licence
MIT
Version
0.2.2
Deps
0
Size
320 kB
Vulns
0
Weekly
608
bu-max-ui
企业级 UI 组件库,支持 Web、移动端、小程序三端,基于 React + TypeScript 构建。
安装
npm install bu-max-ui
# 或
pnpm add bu-max-ui快速上手
引入组件时需同步引入样式文件:
import { SkuInputCard } from 'bu-max-ui';
import 'bu-max-ui/style';基础用法
import { useState } from 'react';
import { SkuInputCard } from 'bu-max-ui';
import 'bu-max-ui/style';
function App() {
const [name, setName] = useState('');
const [lang, setLang] = useState<'zh' | 'en'>('zh');
return (
<SkuInputCard
mode="bilingual"
name={name}
onNameChange={setName}
activeLang={lang}
onLangChange={setLang}
onDelete={() => setName('')}
/>
);
}按需引入
支持按平台路径单独引入,减少构建体积:
// Web 组件
import { SkuInputCard } from 'bu-max-ui/web';
// 移动端组件
import { ... } from 'bu-max-ui/mobile';
// 小程序组件
import { ... } from 'bu-max-ui/miniapp';
// 通用组件
import { ... } from 'bu-max-ui/shared';组件列表
Web
| 组件 | 说明 |
|---|---|
SkuInputCard |
商品规格名称输入卡片,支持单语 / 双语模式、拖拽排序、图片上传 |
Button |
按钮 |
Input |
输入框 |
Card |
卡片 |
Select |
选择器 |
Tooltip |
气泡提示 |
Mobile
| 组件 | 说明 |
|---|---|
Button |
移动端按钮 |
Input |
移动端输入框 |
Card |
移动端卡片 |
TabBar |
底部导航栏 |
Navbar |
顶部导航栏 |
ActionSheet |
动作面板 |
Toast |
轻提示 |
小程序
| 组件 | 说明 |
|---|---|
Button |
小程序按钮 |
Input |
小程序输入框 |
Card |
小程序卡片 |
TabBar |
底部导航栏 |
Navbar |
顶部导航栏 |
ActionSheet |
动作面板 |
Modal |
弹窗 |
Loading |
加载态 |
Toast |
轻提示 |
Cell |
单元格列表 |
SkuInputCard Props
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
name |
string |
'' |
产品名称输入值 |
onNameChange |
(value: string) => void |
— | 名称变更回调 |
mode |
'single' | 'bilingual' |
'single' |
单语或双语模式 |
activeLang |
'zh' | 'en' |
'zh' |
双语模式下当前语言 |
onLangChange |
(lang: 'zh' | 'en') => void |
— | 语言切换回调 |
showBody |
boolean |
true |
是否显示内容区域 |
error |
boolean |
false |
错误状态 |
onDelete |
() => void |
— | 点击删除按钮回调 |
onUpload |
(file: File) => string | Promise<string> |
— | 自定义上传方法,返回图片 URL |
images |
string[] |
— | 外部托管的图片列表 |
id |
string |
— | 拖拽把手 id,供 DnD 库使用 |
className |
string |
— | 自定义类名 |
style |
CSSProperties |
— | 自定义样式 |
本地开发
# 克隆仓库
git clone <repo-url>
cd bu-max-ui
# 安装依赖
pnpm install
# 启动文档站(端口 3000)
pnpm dev
# 构建组件库
pnpm build:lib
# 监听模式(开发库时使用)
pnpm build:lib:watch项目结构
├── lib/ # 组件库源码(npm 包)
│ ├── index.ts
│ ├── web/ # Web 平台组件
│ ├── mobile/ # 移动端组件
│ ├── miniapp/ # 小程序组件
│ ├── react/ # React 通用组件
│ └── shared/ # 共享工具 / 组件
├── src/ # 文档站源码
│ ├── pages/ # 各组件演示页面
│ └── components/ # 文档站内部组件
└── dist/ # 构建产物(发布到 npm)
技术栈
- 框架: React 19 + TypeScript
- 构建: Vite 6(双模式:文档站 / 组件库)
- 样式: Less(BEM 命名规范)
- 文档站: React Router DOM 6 + Tailwind CSS v4
许可证
MIT