直接在register方法中为绑定注入所需的依赖项

时间:2016-07-26 16:46:50

标签: laravel dependency-injection

这是我的注册方法。我有两种束缚。第二个CaptionOrderSubmission是我感兴趣的那个。

public function register()
{
    $clientKey = env('REV_CLIENT_API_KEY');
    $userKey = env('REV_USER_API_KEY');
    $endPoint = env('REV_URL_END_POINT');

    App::bind('RevAPI\Rev', function($app) use($clientKey, $userKey, $endPoint)
    {
        return new Rev($clientKey, $userKey, $endPoint);
    });

    App::bind('RevAPI\CaptionOrderSubmission', function($app) use($clientKey, $userKey, $endPoint)
    {
        $rev = new Rev($clientKey, $userKey, $endPoint);
        return new CaptionOrderSubmission($rev);
    });

}

我该怎样做?

public function register()
{
    $clientKey = env('REV_CLIENT_API_KEY');
    $userKey = env('REV_USER_API_KEY');
    $endPoint = env('REV_URL_END_POINT');

    App::bind('RevAPI\Rev', function($app) use($clientKey, $userKey, $endPoint)
    {
        return new Rev($clientKey, $userKey, $endPoint);
    });

    App::bind('RevAPI\CaptionOrderSubmission', function($app) use(RevApi/Rev $rev)
    {
        return new CaptionOrderSubmission($rev);
    });

}

可能吗?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案 在第二个绑定中你可以做到

App::bind('RevAPI\CaptionOrderSubmission', function($app)
{
    $rev = $app->make("RevApi\Rev");    
    return new CaptionOrderSubmission($rev);
});
相关问题