## 树形选择器
- 方法原型:
```
addTree($name = '', $title = '', $option = [], $tips = '', $default = null, $attr = [])
```
- 参数说明:
```
* @param string $name 字段名:是否必填 格式: name:require 或 name
* @param string $title 标题
* @param array $option 格式:[{id,label,children: []}]
* @param string $tips 提示文字
* @param null $default 默认值
* @param array $attr {
* node_key:节点的唯一键,默认为id,
* disabled: 要禁用的选项key列表,
* props: option的属性名定义 {
* label: option中label的键名,默认为name,
* children: option中children的键名,默认为children,
* }
* }
```
#### props参数说明
`addTree`中第三个参数需要是一个树形结构,默认每个元素中包含 `id`, `name`, 与 `children`参数,其中`id`与`name`为必须的参数,如果传入的结构不符合默认结构,需要通过`node_key`参数以及`props`中的`label`指定各个键名。
## 调用方式
-
```
return SBuilder::make('form')
->addTree('tree', '树形选择器', [
['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)
- 序言
- 下载及安装
- 目录结构
- 基础
- 多站点-单入口文件(推荐)
- (旧)多站点-多入口文件方式
- (旧)入口文件
- (旧)站点配置
- 按钮操作
- 区块概念
- 构建器(SBuilder)
- 页面-Page
- 设置页面标题
- 添加页面提示信息
- 设置页面Tab
- 设置页面背景色
- 设置是否点击遮罩关闭
- 添加区块
- 区块-Block
- 设置区块名
- 设置区块布局
- 表单(form)
- 添加表单项通用方法
- 添加表单项
- 单行文本框
- 多行文本框
- 数字输入框
- 密码框
- 数组输入框
- 单选框
- 状态选择器
- 复选框
- 下拉框
- 级联选择器
- 开关
- 日期选择器
- 日期时间选择器
- 日期范围选择器
- 日期时间范围选择器
- 时间选择器
- 时间范围选择器
- Tree 树形组件
- 图标选择器
- 颜色选择器
- 单图片上传
- 多图片上传
- 视频上传
- 单文件上传
- 多文件上传
- 富文本编辑器-QEditor
- 富文本编辑器-UEditor
- 小程序富文本
- 静态文本
- 隐藏表单项
- 表格数据输入框
- 分组
- 地图选择器(未实现)
- 地区选择器(未实现)
- 穿梭框(未实现)
- 图片裁剪(未实现)
- 邮箱输入框(未实现)
- 设置表单LabelWidth
- 设置表单提交地址
- 设置默认按钮标题
- 提交表单确认框
- 隐藏默认按钮
- 添加额外按钮
- 设置触发器
- 设置表单数据
- 表单布局
- 模板
- 表格(table)
- 设置表名
- 添加顶部按钮
- 添加时间段筛选
- 设置搜索栏
- 添加列
- text
- byte
- status
- tags
- yesno
- datetime
- icon
- image
- images
- external_image[已废弃]
- external_images[已废弃]
- link
- html
- select
- text.edit
- group
- 多选框栏
- 数量索引栏
- 操作栏
- 右侧操作按钮
- 设置多选框
- 设置显示数量索引
- 设置列表数据地址
- 直接设置数据
- 关闭ajax获取数据功能
- 设置分页
- 自动新增
- 自动编辑
- 图表(Charts)
- Html
- Iframe
- 数据面板
- 卡片列表
- 按钮(Button)
- 按钮调用示例
- 自定义组件
- 混合页面
- 概念说明
- 扩展
- 图标扩展
- 杂项
- 帮助函数
- TODO