indragunawan/facade-bundle

支持为Symfony服务提供门面。

安装次数: 11,811

依赖关系: 0

建议者: 0

安全性: 0

星标: 17

关注者: 4

分支: 2

公开问题: 1

类型:symfony-bundle

v0.2.0 2020-03-07 18:54 UTC

This package is auto-updated.

Last update: 2024-09-13 15:54:47 UTC


README

license Travis Scrutinizer Coverage Scrutinizer Source Packagist

支持为Symfony服务提供门面。

感谢

  • 服务定位器 - 使所有引用的门面服务都进行懒加载。
  • 服务自动配置 - 使所有扩展 Indragunawan\FacadeBundle\AbstractFacade 类的类自动标记为门面。

文档

安装

如果你的项目已经使用Symfony Flex,执行此命令以自动下载、注册和配置捆绑包

composer require indragunawan/facade-bundle

如果你不使用Symfony Flex安装,首先使用Composer添加捆绑包,然后在你的项目中的app/AppKernel.php文件中将new Indragunawan\FacadeBundle\IndragunawanFacadeBundle()添加到已注册捆绑包的列表中

创建门面

要创建门面,创建一个继承自基础Indragunawan\FacadeBundle\AbstractFacade类的类,并实现返回服务IDgetFacadeAccessor方法,支持私有公共服务。

<?php

namespace App\Facades;

use Indragunawan\FacadeBundle\AbstractFacade;

class Foo extends AbstractFacade
{
    protected static function getFacadeAccessor()
    {
        return 'App\Service\Foo'; // service id - supports private and public service.
    }
}

现在门面已经准备好了。只需导入门面命名空间。当你调用Foo门面上的任何静态方法时,它将解析你在getFacadeAccessor方法中定义的服务,并从该服务调用请求的方法。

许可证

此捆绑包受MIT许可证的约束。查看完整的许可证