laravel-module-easyui
laravel-module插件easyui模块
安装
composer require wangdong/laravel-module-easyui
配置
-
配置
wangdong/laravel-module
包,参考 https://github.com/repertory/laravel-module -
修改
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' => [], ], ] ] ], ];
-
执行
php artisan module:publish
复制模块文件 -
执行
php composer dumpautoload
处理上一步中新增的类 -
执行
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);
开发
-
创建模块
php artisan module:init group_name/module_name
-
模块支持
php artisan module.wangdong.easyui:init group_name/module_name
-
配置文件
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>