组件说明
单选框组件用于在多个选项中选择一个值。
用法示例
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');
});
});
组件参数
| 参数名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| name | string | - | 字段名称 |
| label | string | - | 字段标签 |
| value | mixed | - | 默认选中值 |
| options | array | [] | 选项组 |
| source | string | - | 动态选项组API地址 |
| labelField | string | 'label' | 选项标签字段名 |
| valueField | string | 'value' | 选项值字段名 |
| columnsCount | int | 1 | 选项按几列显示,默认为一列 |
| inline | bool | false | 是否显示为一行 |
| selectFirst | bool | false | 是否默认选中第一个 |
| autoFill | array | - | 自动填充配置 |
| required | bool | false | 是否必填 |
| disabled | bool | false | 是否禁用 |
| hidden | bool | false | 是否隐藏 |
使用说明
- options数组格式:
[['label' => '显示文本', 'value' => '值'], ...] - inline为true时,选项水平排列
- columnsCount可以设置多列布局(如2表示两列)
- selectFirst可以自动选中第一个选项
- source支持从API动态加载选项