laravel-admin自定义页面,刷新才能显示,原因是pjax引起的
- 禁用特定页面的 pjax 若自定义页面包含复杂的动态组件(如图表、富文本编辑器),可临时禁用 pjax
{{-- 在 Blade 模板顶部禁用 pjax --}}
@section('pjax-container', '') {{-- 清空 pjax 容器标记 --}}
或通过中间件关闭 pjax:
//在控制器中关闭 pjax
public function index(Content $content)
{
// 禁用 pjax
request()->headers->set('X-PJAX', false);
return $content
->title('自定义页面')
->body(view('admin.custom-page'));
}
- 重新初始化动态组件 对于依赖初始化的组件(如 DataTables、Select2),需在 pjax 加载后销毁并重新创建
function initCustomPage() {
// 销毁旧实例(如果存在)
if ($.fn.dataTable.isDataTable('#my-table')) {
$('#my-table').DataTable().destroy();
}
// 重新初始化表格
$('#my-table').DataTable({
// 配置项
});
}
- 检查资源加载
确保自定义 CSS/JS 通过 Laravel-Admin 的资产管理方法加载,避免路径错误:
{{-- 使用 admin_asset() 加载资源 --}} @section('css') <link rel="stylesheet" href="{{ admin_asset('css/custom.css') }}"> @endsection
@section('js')
@endsection ``` 验证步骤 清除缓存: ```php php artisan view:clear php artisan cache:clear ```最近访问时间:2025-06-01 11:02:34