简介
下拉选择组件用于在表格列中实现快速编辑功能,通过下拉选择方式修改数据。
用法示例
基础用法
use plugin\xbCode\builder\Builder;
// 创建表格
Builder::crud(function($builder) {
// 必须先设置快速保存接口
$builder->useCRUD()->quickSaveItemApi('POST:/api/update');
// 添加下拉选择列
$builder->addColumnSelect('status', '状态', [
'options' => [
['label' => '启用', 'value' => 1],
['label' => '禁用', 'value' => 0]
]
]);
});
自定义配置
Builder::crud(function($builder) {
// 设置快速保存接口
$builder->useCRUD()->quickSaveItemApi('POST:/api/save');
// 带API数据源的下拉选择
$builder->addColumnSelect('category_id', '分类', [
'source' => '/api/categories',
'labelField' => 'name',
'valueField' => 'id'
], function($component) {
$component->width(150);
});
// 静态数据源
$builder->addColumnSelect('type', '类型', [
'options' => [
['label' => '类型A', 'value' => 'a'],
['label' => '类型B', 'value' => 'b'],
['label' => '类型C', 'value' => 'c']
],
'clearable' => true
]);
});
组件参数
| 参数名 | 类型 | 默认值 | 说明 |
|---|
| name | string | 必填 | 字段名称,对应数据库字段 |
| label | string | 必填 | 列标题,显示在表格头部 |
| quickEdit | array | [] | 快速编辑配置 |
| option | callable|array | [] | 配置选项,可以是回调函数或数组 |
快速编辑配置(quickEdit)
| 属性名 | 类型 | 默认值 | 说明 |
|---|
| type | string | select | 组件类型,固定为 'select' |
| saveImmediately | bool | true | 是否立即保存 |
| options | array | - | 静态选项数据 |
| source | string | - | 远程API数据源 |
| labelField | string | label | 选项标签字段名 |
| valueField | string | value | 选项值字段名 |
| clearable | bool | - | 是否可清除 |
| searchable | bool | - | 是否可搜索 |
| multiple | bool | - | 是否多选 |
下拉选择组件属性
| 属性名 | 类型 | 默认值 | 说明 |
|---|
| width | int|string | - | 列宽度 |
| align | string | - | 水平对齐方式 |
| vAlign | string | - | 垂直对齐方式 |
| className | string | - | CSS 类名 |
使用场景
注意事项
- 必须先设置
quickSaveItemApi 接口地址,否则会抛出异常 - 默认启用立即保存(saveImmediately: true)
- 选择完成后会自动触发保存请求
- 支持静态数据源和远程API数据源
- 保存接口需要接收主键ID和修改的字段值