157 lines
3.8 KiB
Markdown
157 lines
3.8 KiB
Markdown
# Web widgets
|
|
|
|
## Box
|
|
|
|
`Encore\Admin\Widgets\Box` used to generate box components:
|
|
|
|
```php
|
|
use Encore\Admin\Widgets\Box;
|
|
|
|
$box = new Box('Box Title', 'Box content');
|
|
|
|
$box->removable();
|
|
|
|
$box->collapsable();
|
|
|
|
$box->style('info');
|
|
|
|
$box->solid();
|
|
|
|
echo $box;
|
|
|
|
```
|
|
|
|
The `$content` parameter is the content element of the Box, which can be either an implementation of the `Illuminate\Contracts\Support\Renderable` interface, or other printable variables.
|
|
|
|
`Box::title($title)` method is used to set the Box component title.
|
|
|
|
`Box::content($content)` method is used to set the content element of a Box component.
|
|
|
|
`Box::removable()` method sets the Box component as removable.
|
|
|
|
`Box::collapsable()` method sets the Box component as collapsable.
|
|
|
|
`Box::style($style)` method sets the style of the Box component to fill in `primary`, `info`, `danger`, `warning`, `success`, `default`.
|
|
|
|
`Box::solid()` method adds a border to the Box component.
|
|
|
|
## Collapse
|
|
|
|
`Encore\Admin\Widgets\Collapse` class used to generate folding components:
|
|
```php
|
|
use Encore\Admin\Widgets\Collapse;
|
|
|
|
$collapse = new Collapse();
|
|
|
|
$collapse->add('Bar', 'xxxxx');
|
|
$collapse->add('Orders', new Table());
|
|
|
|
echo $collapse->render();
|
|
|
|
```
|
|
|
|
`Collapse::add($title, $content)` method is used to add a collapsed item to the collapsing component. The `$title` parameter sets the title of the item. The`$content` parameter is used to .
|
|
|
|
|
|
## Form
|
|
|
|
`Encore\Admin\Widgets\Form` class is used to quickly build a form:
|
|
|
|
```php
|
|
|
|
$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 = [])` generates a form object. If the `$data` parameter is passed, the elements in the `$data` array will be filled into the form.
|
|
|
|
`Form::action($uri)` method is used to set the form submission address.
|
|
|
|
`Form::method($method)` method is used to set the submit method of the form, the default is `POST` method.
|
|
|
|
`Form::disablePjax()` disable pjax for form submit.
|
|
|
|
## Infobox
|
|
|
|
`Encore\Admin\Widgets\InfoBox` class is used to generate the information presentation block:
|
|
|
|
```php
|
|
use Encore\Admin\Widgets\InfoBox;
|
|
|
|
$infoBox = new InfoBox('New Users', 'users', 'aqua', '/admin/users', '1024');
|
|
|
|
echo $infoBox->render();
|
|
|
|
```
|
|
|
|
Refer to the section on the `InfoBox` in the `index()` method of the home page layout file [HomeController.php](https://github.com/z-song/laravel-admin/blob/master/src/Console/stubs/HomeController.stub).
|
|
|
|
## Tab component
|
|
|
|
`Encore\Admin\Widgets\Tab` class is used to generate the tab components:
|
|
|
|
```php
|
|
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)` method is used to add new tab, `$title` is tab title, `$content` is tab content.
|
|
|
|
## Table
|
|
|
|
`Encore\Admin\Widgets\Table` class is used to generate tables:
|
|
|
|
```php
|
|
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();
|
|
|
|
```
|
|
|