单选框组件

组件说明

单选框组件用于在多个选项中选择一个值。

用法示例

use plugin\xbCode\builder\Builder;
use plugin\xbCode\builder\Renders\Form;

Builder::form(function (Form $builder) {
    // 基础用法
    $builder->addRowRadio('gender', '性别', '1', function($component) {
        $component->options([
            ['label' => '男', 'value' => '1'],
            ['label' => '女', 'value' => '2']
        ]);
        $component->inline(true);
    });

    // 多列展示
    $builder->addRowRadio('hobby', '爱好', '', [
        'options' => [
            ['label' => '阅读', 'value' => '1'],
            ['label' => '运动', 'value' => '2'],
            ['label' => '音乐', 'value' => '3'],
            ['label' => '旅游', 'value' => '4']
        ],
        'columnsCount' => 2,
        'selectFirst' => true
    ]);

    // 使用API动态加载选项
    $builder->addRowRadio('status', '状态', '', function($component) {
        $component->source('/api/status/options');
        $component->labelField('name');
        $component->valueField('id');
    });
});

组件参数

参数名类型默认值说明
namestring-字段名称
labelstring-字段标签
valuemixed-默认选中值
optionsarray[]选项组
sourcestring-动态选项组API地址
labelFieldstring'label'选项标签字段名
valueFieldstring'value'选项值字段名
columnsCountint1选项按几列显示,默认为一列
inlineboolfalse是否显示为一行
selectFirstboolfalse是否默认选中第一个
autoFillarray-自动填充配置
requiredboolfalse是否必填
disabledboolfalse是否禁用
hiddenboolfalse是否隐藏

使用说明

  1. options数组格式:[['label' => '显示文本', 'value' => '值'], ...]
  2. inline为true时,选项水平排列
  3. columnsCount可以设置多列布局(如2表示两列)
  4. selectFirst可以自动选中第一个选项
  5. source支持从API动态加载选项