广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >Dcat Admin 入门应用(四)自定义页面
  • 677
分享到

Dcat Admin 入门应用(四)自定义页面

2024-04-02 19:04:59 677人浏览 安东尼
摘要

自定义页面 Dcat Admin构建的是一个单页应用,加载的js脚本只会执行一次,所以初始化操作不能直接放在JS脚本中,应该使用Admin::script方法载入。 示例 创建自定义页面 需要实现Renderable接口,统一实现rend

自定义页面

Dcat Admin构建的是一个单页应用,加载的js脚本只会执行一次,所以初始化操作不能直接放在JS脚本中,应该使用Admin::script方法载入。

示例

创建自定义页面

  1. 需要实现Renderable接口,统一实现render
  2. 自定义页面可以选择性的加载js和CSS,也可以加载页面需要执的js(当然页面js也可以直接写在模板里面)
<?PHP

namespace App\Admin\Views\Tools\SiteMap;

use Dcat\Admin\Admin;
use Illuminate\Contracts\Support\Renderable;
use Throwable;

class ConvertPage implements Renderable
{
    protected $default = '';

    // 定义页面所需的静态资源,这里会按需加载
    public static $js = [
        // js脚本不能直接包含初始化操作,否则页面刷新后无效
        'js/laydate/laydate.js',
        'js/custom/tools.js',
        'js/common.js',
    ];

    public static $css = [
        'css/custom/custom.css'
    ];

    public function script()
    {
        return <<<JS
        //日期控件实例化        
        dateRange('dateRangeMap',"$this->default");
        // 初始化操作写在这里
        $('.submit-btn').click(function(){
            var that = $(this)
            downLoadUrl(that)
        })
JS;
    }

    
    public function render()
    {
        $this->default = date('Y-m-d', strtotime('-30 days')) . ' - ' . date('Y-m-d');
        // TODO: Implement render() method.
        // 在这里可以引入你的js或css文件
        Admin::js(static::$js);
        Admin::css(static::$css);

        // 需要在页面执行的JS代码
        // 通过 Admin::script 设置的JS代码会自动在所有JS脚本都加载完毕后执行
        Admin::script($this->script());
        return view('admin.custom.sitemap')->render();
    }
}

创建自定义页面模板

可以根据需求构建更为复杂的页面,通过js、css自定义加载实现页面功能扩展和样式扩展
adminLTE样式大部分可以延用

注:页面模板中不要包含<body>和<html>等标签:


<div class="box box-primary" style="padding: 10px">
    <div class="box-header with-border">
        <h3 class="box-title">资源链接生成</h3>
    </div>
    <fORM class="form-inline padding20" role="form" method="post"
          action="{{ url('tools/sitemap/download/url') }}">
        {{ csrf_field() }}

        <div class="form-group">
            <label>生成类型:</label>
            <select name="convert" id="convertType" class="form-control">
                <option value="1"> 文章</option>
                <option value="2"> 专栏</option>
                <option value="3"> 用户</option>
            </select>
        </div>
        <div class="form-group">
            <label>创建时间:</label>
            <input type="text" class="form-control date-range" readonly id="dateRangeMap" name="dateRange">
        </div>

        <div class="form-group">
            <div class="btn btn-primary submit-btn" data-total="0">生成并导出</div>
        </div>
    </form>
</div>

<script>
Dcat.ready(function () {
    // js代码也可以放在模板里面
    console.log('所有JS脚本都加载完了!!!');
});
</script>

自定义页面使用

    ...

   
    public function index(Content $content)
    {
        return $content
            ->header('')
            ->body(function (Row $row) {
                //这里是分成两列显示
                $row->column(6, function (Column $column) {
                    $column->row(new ConvertPage());
                });
                $row->column(6, function (Column $column) {
                    $column->row(new IdHash());
                });
            });
    }

--结束END--

本文标题: Dcat Admin 入门应用(四)自定义页面

本文链接: https://www.lsjlt.com/news/99308.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Dcat Admin 入门应用(四)自定义页面
    自定义页面 Dcat Admin构建的是一个单页应用,加载的JS脚本只会执行一次,所以初始化操作不能直接放在JS脚本中,应该使用Admin::script方法载入。 示例 创建自定义页面 需要实现Renderable接口,统一实现rend...
    99+
    2022-10-22
  • Dcat Admin 入门应用(五)文件上传之OSS自定义上传
    数据表单通过以下的调用来生成图片/文件上传表单,支持本地和云存储的文件上传,该文章介绍如何通过自定义上传路径处理文件上传和将文件存储到阿里云OSS。 1、上传组件是基于webuploader实现的,具体的使用配置可参考webuploade...
    99+
    2022-10-22
  • 微信小程序用vant自定义tabbar页面并跳转相应页面
    0.前置安装 步骤一 安装 vant 组件库 npm i @vant/weapp -S --production 下载完后要npm构建才能使用 步骤二 修改 app.json 将 app.json 中的 "style": "v2" 去...
    99+
    2023-08-16
    微信小程序 小程序
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作