输入框组件

简介

输入框组件用于在表格列中实现快速编辑功能,支持单元格内直接修改数据。

用法示例

基础用法

use plugin\xbCode\builder\Builder;

// 创建表格
Builder::crud(function($builder) {
  // 必须先设置快速保存接口
  $builder->useCRUD()->quickSaveItemApi('POST:/api/update');
  
  // 添加输入框列
  $builder->addColumnInput('title', '标题');
});

自定义配置

Builder::crud(function($builder) {
  // 设置快速保存接口
  $builder->useCRUD()->quickSaveItemApi('POST:/api/save');
  
  // 使用回调函数自定义配置
  $builder->addColumnInput('name', '名称', [
    'placeholder' => '请输入名称',
    'maxLength' => 50
  ], function($component) {
    $component->width(200);
  });
  
  // 带验证规则
  $builder->addColumnInput('email', '邮箱', [
    'placeholder' => '请输入邮箱',
    'validations' => [
      'isEmail' => true
    ],
    'validationErrors' => [
      'isEmail' => '请输入正确的邮箱格式'
    ]
  ]);
});

组件参数

参数名类型默认值说明
namestring必填字段名称,对应数据库字段
labelstring必填列标题,显示在表格头部
quickEditarray[]快速编辑配置
optioncallable|array[]配置选项,可以是回调函数或数组

快速编辑配置(quickEdit)

属性名类型默认值说明
typestringinput-text输入框类型,固定为 'input-text'
saveImmediatelybooltrue是否立即保存
placeholderstring-占位符
maxLengthint-最大长度
validationsarray-验证规则
validationErrorsarray-验证错误提示

输入框组件属性

属性名类型默认值说明
widthint|string-列宽度
alignstring-水平对齐方式
vAlignstring-垂直对齐方式
classNamestring-CSS 类名

使用场景

  • 快速修改标题
  • 编辑备注信息
  • 修改名称字段
  • 更新简单文本内容

注意事项

  1. 必须先设置 quickSaveItemApi 接口地址,否则会抛出异常
  2. 默认启用立即保存(saveImmediately: true)
  3. 输入完成后会自动触发保存请求
  4. 支持表单验证功能
  5. 保存接口需要接收主键ID和修改的字段值