ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 方法原型: ``` addCascader($name = '', $title = '', $options = [], $tips = '', $default = '', $attr = []) ``` ## 参数说明: ``` * @param string $name 字段名及是否必填 格式: name:require 或 name * @param string $title 标题及占位符 格式: title|placeholder,无竖线分隔则为标题 * @param array $options 默认格式为: [{id,name,disabled,children},] , id与name为必须项,可通过attr中的props指定各个字段的键名 * @param string $tips 提示文字 * @param string $default 默认值 * @param array $attr 组件属性 { * show_all_levels: 是否展示所有层级,默认为true * select_all_levels: 是否可选择所有层级,默认为false * props: options的属性名定义 { * value: options中value的键名,默认为id, * label: options中label的键名,默认为name, * disabled: options中disabled的键名,默认为disabled, * children: options中children的键名,默认为children, * } * } ``` #### props参数说明 `addCascader`中第三个方法需要是一个树形结构,默认每个元素中包含 `id`, `name`, `disabled` 与 `children`参数,其中`id`与`name`为必须的参数,如果传入的结构不符合默认结构,需要在`props`中指定各个键名。 ## 调用方式 - ``` return SBuilder::make('form') ->addCascader('pid', '所属权限|顶级权限', [ ['id' => 1, 'name' => '权限', 'pid' => 0, 'children' => [ ['id' => 2, 'name' => '列表', 'pid' => 1], ['id' => 3, 'name' => '禁用的选项', 'pid' => 1, 'disabled' => true] ]], '', '', [ 'select_all_levels' => true, ] ]) ->fetch(); ``` > 页面效果: ![](images/screenshot_1557820266834.png)