我想简化在应用程序中创建外观的方式。
假设我有一个foo
的实例,我想通过我的应用程序中任何位置的Facade访问它。
我有:
app()->singleton('foo', Foobar\Bar\Foo::class);
然后我在config/app.php
'aliases' => [
'Foo' => App\Facades\Foo::class
...
然后我为foo创建了外观
namespace App\Facades;
use Illuminate\Support\Facades\Facade;
class User extends Facade
{
protected static function getFacadeAccessor()
{
return 'foo';
}
}
现在我可以从任何地方访问foo实例:
Foo::foo();
是否可以将其简化为单行,例如:
app()->registerFacade('foo', 'Foo');