evo-mark/evo-laravel-service-facades

支持轻松使用服务/外观模式的包

1.0.0 2024-09-11 08:23 UTC

This package is auto-updated.

Last update: 2024-09-11 10:04:07 UTC


README

Build status Total Downloads License

Evo Laravel Service Facades

在多个预定义位置创建具有支持外观的服务的服务,然后自动将它们加载到您的应用程序中。

为您的外观生成PHP Doc注释,以在IDE中启用类型提示。

php artisan make:service
php artisan facades:annotate

为了保持您的注释更新,您应该在应用程序的composer.json文件中添加以下内容:

 "post-autoload-dump": [
    "@php artisan facades:annotate --no-interaction"
],

默认情况下,您的应用程序的Service和Facades文件夹将用作默认的“位置”。您可以通过发布包的配置文件来更改此设置。

您还可以在应用程序启动期间通过调用添加到可用位置:

use EvoMark\EvoLaravelServiceFacades\Facades\ServiceFacades;

public function boot()
{
    ServiceFacades::registerLocation(
        name: "Custom Location",
        serviceNamespace: "App\\CustomServices",
        facadeNamespace: "App\\CustomFacades",
        servicePath: app_path('CustomServices'),
        facadePath: app_path('CustomFacades'),
        exclude = ["SomeExcludedService"]
    );
}