初始化仓库
This commit is contained in:
64
admin/components/UI/Event.php
Normal file
64
admin/components/UI/Event.php
Normal file
@@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace admin\components\UI;
|
||||
|
||||
/**
|
||||
* 前端事件触发器
|
||||
* Class Table
|
||||
* @package backend\components\UI
|
||||
*/
|
||||
class Event
|
||||
{
|
||||
|
||||
public string $name = '';
|
||||
public array $data = [];
|
||||
|
||||
/**
|
||||
* @param $name
|
||||
*/
|
||||
public function __construct($name)
|
||||
{
|
||||
$this->name = md5($name);
|
||||
}
|
||||
|
||||
/**
|
||||
* 增加动作
|
||||
* @param $type
|
||||
* @param string $key
|
||||
* @param array $data
|
||||
* @param array $attr
|
||||
* @return $this
|
||||
*/
|
||||
public function add($type, string $key = '', array $data = [], array $attr = []): self
|
||||
{
|
||||
$this->data[] = array_filter(array_merge([
|
||||
'type' => $type,
|
||||
'key' => $key,
|
||||
'data' => $data
|
||||
], $attr));
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 渲染数据
|
||||
* @param false $inner
|
||||
* @return array
|
||||
*/
|
||||
public function render(bool $inner = false): array
|
||||
{
|
||||
if ($inner) {
|
||||
return [
|
||||
'name' => $this->name,
|
||||
'data' => $this->data
|
||||
];
|
||||
}
|
||||
|
||||
return [
|
||||
'__event' => [
|
||||
'name' => $this->name,
|
||||
'data' => $this->data
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user