SPHP内置了强大的快速构建器,可以帮助开发者快速构建表单页面、数据表格和弹窗,以便让开发者专注于业务逻辑,而不用把过多的精力放在制作各种页面上,今后SPHP将推出更多不同的构建器。
> 目前SBuilder仅用于后台页面, 暂不支持在前台使用
## 基本使用
SPHP的所有快速构建器都统一由`SBuilder`来调用和处理,在使用前只需要引入SBuilder即可方便的使用各种构建器。
### 1.引入SBuilder
~~~
use evan\sbuilder\builder\SBuilder;
~~~
### 2.调用make和fetch方法创建并构建页面
~~~
use evan\sbuilder\builder\SBuilder;
class Demo extends Admin
{
/**
* 示例表单页
* @return mixed
* @throws \think\Exception
*/
public function index()
{
// return SBuilder::make('table')->fetch();
// 或使用快捷方法
return SBuilder::makeTable()->fetch();
}
}
~~~
SBuilder本身只有一个静态方法`make()`和一个普通方法`fetch()`,其他扩展方法由各自的构建器实现。
> 如无特殊说明,后面的章节将直接使用ZBuilder,默认为已引入ZBuilder
## make(构建器名, layout)
`make`方法第一个参数,也就是要构建的类型,目前有以下几种:
> 构建区块类型时, 会创建一个页面, 包含该类型的区块, 同时可以给此页面添加其他的区块
| 构建器名 | 含义 |
| --- | --- |
| page | 空页面(不包含区块, 需自己再添加区块) |
| block | 空区块 |
| form | 表单构建器 |
| table | 表格构建器 |
| charts | 图表构建器 |
| html | 自定义html内容 |
| iframe | 包含iframe外链的区块 |
| data-panel | 数据面板 |
| card-list | 卡片列表 |
## 快捷方法
> 建议使用快捷方法, 这样可以使编辑器提供友好的代码提示
>
`makeForm` 等同于 `make('form')`
`makeTable` 等同于 `make('table')`
`makeCharts` 等同于 `make('charts')`
`makeHtml` 等同于 `make('html')`
`makeIframe` 等同于 `make('iframe')`
`makeDataPanel` 等同于 `make('data-panel')`
`makeCardList` 等同于 `make('card-list')`
## fetch([输出变量])
`fetch`方法是渲染页面结构并返回一个页面结构给前端,一般不需要传参,直接return即可。
传参时将把传入的数据覆盖到页面结构数据上并返回
- 序言
- 下载及安装
- 目录结构
- 基础
- 多站点-单入口文件(推荐)
- (旧)多站点-多入口文件方式
- (旧)入口文件
- (旧)站点配置
- 按钮操作
- 区块概念
- 构建器(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