Skip to content

Components 组件库

Base 基础组件

Layout 布局组件

引入方式

javascript
import { PTitle, PIcon } from "@Pcomponents";

p-title 标题组件

功能说明

带切换功能的标题栏组件,支持右侧区域通过插槽自定义

Props

参数说明类型默认值示例
list标题列表Array[]['订单管理']

Events

事件名说明回调参数
change标题切换事件' { value: 当前值, index: 当前索引 } '

Slots

名称说明
default右侧区域插槽

使用示例

vue
<p-title :list="['订单', '物流']" @change="handleTitleChange" />

p-icon 图标组件

功能说明

图标组件,支持 Element plus 图标和 iconfont 图标

Props

参数说明类型默认值示例
name图标名称Stringel-icon-loading'el-icon-edit'
size图标大小String/Number1624
color图标颜色String#000'#ff0000'

使用示例

vue
<p-icon name="el-icon-edit" size="24" color="#ff0000" />

p-item 基础项组件

功能说明

通用表单项组件,支持多种输入类型和选项配置

Props

参数说明类型默认值示例
config表单项配置Object{}{}:Config
modelValue双向绑定值Any--

Config 配置项

参数说明类型默认值示例
key字段名String-"name"
label标签文本String-"用户名"
type输入类型String-"input"
placeholder提示文字String-"请输入"
isText文本展示Booleanfalsefalse
isRequired必填标识Booleanfalsefalse
isDisabled禁用标识Booleanfalsefalse
options选项列表Array[][{label:'男',value:'1'}]
enumKey枚举类型String-"gender"
more动态绑定的属性Object{}{}

type 支持的输入类型:

  • slot:插槽
  • input:文本输入框
  • textarea:多行文本输入框
  • inputNumber:数字输入框
  • select:下拉选择框
  • selectMultiple:多选下拉选择框
  • radio:单选框
  • checkbox:多选框
  • date:日期选择器
  • daterange:日期范围选择器
  • time:时间选择器
  • datetime:日期时间选择器
  • datetimerange:日期时间范围选择器

Events

事件名说明回调参数
change值变化事件'{ key?, value, row? }'

Slots

名称说明
default自定义插槽
right自定义右侧插槽
bottom自定义底部插槽

使用示例

vue
<p-item v-model="form.name" :config="{ type: 'input', label: '用户名' }" />

p-button 按钮组件

功能说明

按钮组件,同 Element plus 按钮组件并支持 btnkey 权限控制

Props

参数说明类型默认值示例
btnkey按钮权限名称String-"orderPage_add"
...Element plus 按钮组件 Props---

使用示例

vue
<p-button type="primary" btnkey="orderPage_add">添加订单</p-button>

p-search 搜索组件

功能说明

搜索表单组件,支持动态表单配置

Props

参数说明类型默认值示例
showReset是否显示重置按钮Booleantruetrue

Events

事件名说明回调参数
search搜索按钮点击事件-
reset重置按钮点击事件-

Slots

名称说明
default自定义搜索项插槽

使用示例

vue
<p-search @search="handleSearch" @reset="handleReset" />

p-table 表格组件

功能说明

增强型表格组件,支持分页等功能

Props

参数说明类型默认值示例
data表格数据Array[][]
showSelection显示多选框Booleanfalsefalse
showIndex显示序号列Booleantruetrue
maxHeight表格最大高度Number/String800800
pagination分页配置Object{}{}:Pagination

Pagination 分页配置

参数说明类型默认值示例
pageNumber页码Number11
pageSize每页条数Number1010
total总条数Number00

Events

事件名说明回调参数
selectionChange选择项变化事件'selectionList: 选中行数据'
paginationChange分页变化事件'{ pageNumber, pageSize }'

Slots

名称说明回调参数
topLeft表格左上角区域-
topRight表格右上角区域-
column操作列-
botLeft表格左下角区域-

使用示例

vue
<p-table :data="tableData" />

p-dialog 对话框组件

功能说明

支持三种形态的对话框组件(弹窗/抽屉/全屏页面)

Props

参数说明类型默认值
type类型:box/drawer/pageString"box"
modelValue显示/隐藏状态Booleanfalse
title对话框标题String""
width宽度(支持 px/%,page 类型无效)String"500px"

Slots

名称说明
default对话框主体内容
header页头区域右侧(仅 page 类型)
footer页脚区域

使用示例

vue
<p-dialog type="drawer" title="编辑信息" v-model="showDialog"></p-dialog>

p-collapse 折叠组件

功能说明

可折叠内容区域组件

Props

参数说明类型默认值示例
title标题内容String"""订单明细"
isCollapse初始是否展开Booleanfalsefalse
isControl是否允许折叠Booleantruetrue
showDownLine是否显示底部边框Booleantruetrue

Slots

名称说明
default折叠面板内容区域

使用示例

vue
<p-collapse title="详细信息">
  <p>这里是折叠内容</p>
</p-collapse>

p-twinBox 双栏布局组件

功能说明

双栏布局组件,用于将内容分为左右两栏,移动端自适应为上下两栏

Props

参数说明类型默认值示例
size首栏宽度/高度String/Number"220""220"
min首栏最小宽度/高度String/Number"100""100"
max首栏最大宽度/高度String/Number"380""380"

Slots

名称说明
plan1左侧/顶部内容
plan2右侧/底部内容

使用示例

vue
<p-twinBox>
  <template #plan1>
    <p>这里是左侧内容</p>
  </template>
  <template #plan2>
    <p>这里是右侧内容</p>
  </template>
</p-twinBox>

京ICP备2025125905号