跟 thinkphp 是没有什么区别的
#project\app\admin\controller\Category.php
namespace app\admin\controller;
class Category extends \easyadmin\controller\Admin
{
public function my_page(){
# 根据需求添加资源文件
$resource = Resource::getInstance();
$resource->appendCssFile('/js.js');
$resource->appendJsFile('/css.css');
# 根据需求设置面包屑
$breadcrumb = new Breadcrumb();
$breadcrumb->add('name', 'http://xxx.xxx.com');
$breadcrumb->add('name2', 'http://xxx.xxx.com');
return $this->fetch('category:my_page', [
'name' => 'zhangSan',
'__breadcrumb__' => $breadcrumb
]);
}
}
完全自定义页面,空白页面
#project\app\admin\views\category\my_page.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{$name}
</body>
</html>
使用 layout 页面
{extend name="@layout" /}
{block name="body"}
后台首页
{/block}
继承列表页面
{extend name="@list:list" /}
{block name="title"}
# 页面标题
{$__page_name__}列表
{/block}
{block name="style"}
# css 样式
{/block}
{block name="header_action"}
# 添加按钮
{if isset($addAction)}
{$addAction}
{/if}
{/block}
{block name="filter"}
{if isset($table)}
{$table->getFilter()}
{/if}
{/block}
{block name="body"}
{if isset($table)}
# table foreach 输出
{/if}
{/block}
{block name="pagination"}
# 分页
{if isset($table)}
{$table->getPage()}
{/if}
{/block}
{block name="body_script"}
# 底部js
{/block}
继承添加页面
{extend name="@form:form" /}
{block name="body"}
# 您的业务
{/block}
{block name="title"}{$__page_name__}{/block}
{block name="style"}{/block}
{block name="head_script"}{/block}
{block name="body_script"}{/block}
# 更多模块可查看 layout 文件
{__block__}标签默认会查找到 layout.html ; 如果多级继承后, 可直接把上级页面中的需要内容复制进来,然后实现自己的重写
例如继承详情页面
{extend name="@show:show" /}
{block name="body"}
您的业务
{__block__}
# 此处的 {__block__} 会查找到 layout.html 中的 {block name="body"}
# 如果需要 show 页面中的 body ,可以吧 show 页面中的 body 内容复制到这里
{/block}
{block name="title"}{$__page_name__}{/block}
{block name="style"}{/block}
{block name="head_script"}{/block}
{block name="body_script"}{/block}
# 更多模块可查看 layout 文件