dcat的一些自定义视图修改封装

<?php
namespace xxxx;

use Dcat\Admin\Admin;
class CustomViewService
{

    /**
     * Desc:修复侧边菜单折叠时点击不收起的bug
     */
    public function fixSidebarBug()
    {
        Admin::script(
            <<<JS
                $(".nav-sidebar .nav-item").on("click",function(){
                    if($("body").hasClass("sidebar-collapse")){
                            $(".main-sidebar").removeClass("sidebar-focused");
                    }
                })
JS
        );
        return $this;
    }
    /**
     * Desc:覆盖dcat默认视图文件
     */
    public function coverDefaultView()
    {
        app('view')->prependNamespace('admin', resource_path('views/laravel-admin'));
        return $this;
    }

    /**
     * @Desc 追加一个my.css覆盖后台样式
     */
    public function coverStyle()
    {
        Admin::asset()->alias('@my-assets', 'assets');
        Admin::css('@my-assets/my.css?v='.mt_rand());
        return $this;
    }

    /**
     * 底部授权移除.
     * @param bool $is
     */
    public function removeFooter($is=true)
    {
        if ($is) {
            Admin::style(
                <<<'CSS'
.main-footer {
    display: none;
}
CSS
            );
        }
    }


}

在app/Admin/bootstrap.php中使用

app(CustomViewService::class)
    ->coverDefaultView() // `views/laravel-admin`下同名模板覆盖模板,方便自定义登录页或者改其他模板文件
    ->coverStyle() // 追加一个my.css用来定义样式
    ->removeFooter(); // 隐藏底部dcat字样

dcat的一些自定义视图修改封装

关于为什么不直接在bootstrap里面加,而是单独在CustomViewService里面加。

因为全写bootstrap里面多了之后乱七八糟不好找,拆分到不同的service里面方便修改,CustomViewService管dcat的自定义视图,TableService管表格初始化全局设置,FormService管表单,MenuService管菜单,NavbarService管顶部导航栏,按需注册Admin::navbar

dcat的一些自定义视图修改封装

dcat的一些自定义视图修改封装

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!