前端组件

Box组件

Encore\Admin\Widgets\Box用来生成box组件:

use Encore\Admin\Widgets\Box;

$box = new Box('Box标题', 'Box内容');

$box->removable();

$box->collapsable();

$box->style('info');

$box->solid();

$box->scrollable();

echo $box;

Box::__construct($title, $content),$title参数为Box组件的标题,$content参数为Box的内容元素,可以是实现了Illuminate\Contracts\Support\Renderable接口的对象或者其他可打印变量。

Box::title($title)方法用来设置Box组件标题。

Box::content($content)方法用来设置Box组件的内容元素。

Box::removable()方法将Box组件设置为可关闭。

Box::collapsable()方法将Box组件设置为可展开和收起。

Box::style($style)方法设置Box组件的样式,可填值为primary,info,danger,warning,success,default

Box::solid()方法为Box组件添加边框。

Collapse组件

Encore\Admin\Widgets\Collapse类用来生成折叠插件:

use Encore\Admin\Widgets\Collapse;

$collapse = new Collapse();

$collapse->add('Bar', 'xxxxx');
$collapse->add('Orders', new Table());

echo $collapse->render();

Collapse::add($title, $content)方法用来给折叠组件添加一个折叠项,$title参数设置该折叠项的标题,$content参数用来舍子折叠区的内用。

表单

Encore\Admin\Widgets\Form类用来快速构建表单:


$form = new Form();

$form->action('example');

$form->email('email')->default('qwe@aweq.com');
$form->password('password');
$form->text('name', '输入框');
$form->url('url');
$form->color('color');
$form->map('lat', 'lng');
$form->date('date');
$form->json('val');
$form->dateRange('created_at', 'updated_at');

echo $form->render();

Form::__construct($data = [])生成一个form对象,如果传入了$data参数,$data数组中的元素将会按照key对应填入form对应name的表单中。

Form::action($uri)方法用来设置表单提交地址。

Form::method($method)方法用来设置form表单的提交方法,默认为POST方法。

Form::disablePjax() 不使用pjax方式提交表单。

Infobox组件

Encore\Admin\Widgets\InfoBox类用来生成信息展示块:

use Encore\Admin\Widgets\InfoBox;

$infoBox = new InfoBox('New Users', 'users', 'aqua', '/admin/users', '1024');

echo $infoBox->render();

效果请参考后台首页的布局文件HomeController.phpindex()方法中,关于InfoBox的部分。

Tab组件

Encore\Admin\Widgets\Tab类用来生成选项卡组件:

use Encore\Admin\Widgets\Tab;

$tab = new Tab();

$tab->add('Pie', $pie);
$tab->add('Table', new Table());
$tab->add('Text', 'blablablabla....');

echo $tab->render();

Tab::add($title, $content)方法用来添加一个选项卡,$title为选项标题,$content选项卡内容。

Table

Encore\Admin\Widgets\Table类用来生成表格:

use Encore\Admin\Widgets\Table;

// table 1
$headers = ['Id', 'Email', 'Name', 'Company'];
$rows = [
    [1, 'labore21@yahoo.com', 'Ms. Clotilde Gibson', 'Goodwin-Watsica'],
    [2, 'omnis.in@hotmail.com', 'Allie Kuhic', 'Murphy, Koepp and Morar'],
    [3, 'quia65@hotmail.com', 'Prof. Drew Heller', 'Kihn LLC'],
    [4, 'xet@yahoo.com', 'William Koss', 'Becker-Raynor'],
    [5, 'ipsa.aut@gmail.com', 'Ms. Antonietta Kozey Jr.'],
];

$table = new Table($headers, $rows);

echo $table->render();

// table 2
$headers = ['Keys', 'Values'];
$rows = [
    'name'   => 'Joe',
    'age'    => 25,
    'gender' => 'Male',
    'birth'  => '1989-12-05',
];

$table = new Table($headers, $rows);

echo $table->render();