wangdong/laravel-module-easyui

module for laravel-module


Keywords
easyui, wangdong, laravel-module
License
MIT

Documentation

laravel-module-easyui

Latest Stable Version Total Downloads Latest Unstable Version License composer.lock available

laravel-module插件easyui模块

安装

composer require wangdong/laravel-module-easyui

配置

  1. 配置wangdong/laravel-module包,参考 https://github.com/repertory/laravel-module

  2. 修改config/module.php文件如下

    return [
        // 路由配置
        'route' => [
            'default' => 'wangdong/easyui',
            'prefix' => 'admin', // TODO 留空时需要屏蔽默认的首页路由
            'middleware' => [
                Illuminate\Session\Middleware\StartSession::class,
                Module\Wangdong\Easyui\VerifyCsrfToken::class,
                Module\Wangdong\Easyui\Middleware::class,
            ],
        ],
    
        // 复制文件(支持闭包)
        'publishes' => function () {
            return [
                module_path('wangdong/easyui', 'config') => base_path('config'),
                module_path('wangdong/easyui', 'database') => base_path('database'),
                module_path('wangdong/easyui', 'public') => base_path('public'),
            ];
        },
    
        // 命令配置(支持闭包)
        'commands' => [
            Module\Wangdong\Easyui\Commands\Init::class,
            Module\Wangdong\Easyui\Commands\Migrate::class,
        ],
    
        // 模块配置,可通过module_config方法获取
        'modules' => [
            // TODO 按照group_name/module_name格式配置(覆盖composer.json > extra.laravel-module.config)
            'wangdong' => [
                'easyui' => [
                    'name' => '后台管理系统',
                    'theme' => 'metro',
                    'import' => [
                        'styles' => [],
                        'scripts' => [],
                    ],
                ]
            ]
        ],
    ];
  3. 执行php artisan module:publish 复制模块文件

  4. 执行php composer dumpautoload 处理上一步中新增的类

  5. 执行php artisan module.wangdong.easyui:migrate 初始化模块数据

Lumen配置

文件bootstrap/app.php

$app->middleware([
    Illuminate\Session\Middleware\StartSession::class
]);
$app->configure('auth');
$app->configure('module');
$app->configure('session');
$app->bind(Illuminate\Session\SessionManager::class, function ($app) {
    return $app->make('session');
});
$app->register(Illuminate\Cookie\CookieServiceProvider::class);
$app->register(Illuminate\Redis\RedisServiceProvider::class);
$app->register(Illuminate\Session\SessionServiceProvider::class);
$app->register(LaravelModule\ServiceProvider::class);

开发

  1. 创建模块 php artisan module:init group_name/module_name

  2. 模块支持 php artisan module.wangdong.easyui:init group_name/module_name

  3. 配置文件 module/group_name/module_name/composer.json

隔离

ajax页面关键字 :module

<script type="text/javascript">
    $('.easyui-panel', ':module').panel('options');
</script>

<style type="text/css">
    :module .easyui-panel { }
</style>