2016-03-19 33 views
0

Diyelim ki bir L5 paketi geliştiriyorum ve söz konusu paket bazı takma adlar sağlayan başka bir paket kullanıyor (ve kendi composer.json numaralı telefonu kullanıyor).Paketin servis sağlayıcısından gerekli bir paketin takma adlarını yüklemek mümkün mü?

Takma ad hizmet sağlayıcımın register() işlevinin içinden yüklenmenin bir yolu var mı?

bir örnek laravelcollective/html kullanan bir paket olacağını ve onun servis sağlayıcı bu gibi register() fonksiyonu üzerine, bir şey vardır tarih: kullanıcı için takma adları eklemek zorunda değildir

public function register() 
    { 
     // Whatever else... 
     $this->app->register('Collective\Html\HtmlServiceProvider'); 

     // And then I'm looking for something like the following 
     // $this->app->alias('HTML', 'Collective\Html\HtmlFacade'); 
     // $this->app->alias('Form', 'Collective\Html\FormFacade'); 
    } 

Bu şekilde Onun uygulama yapılandırma dosyası ve aslında kendi testlerim için testbench gibi bir şeyle kullanılabilir.

Teşekkürler!

cevap

0

Tamam, bu yüzden kendi sorularıma cevap vermek için, AliasLoader örneğini alabilir ve kendi takma adlarınızı yükleyebilirsiniz. örnek sorumu belirtilen takiben bu gibi bir şey olurdu: paketine cephe yükleyecektir

public function register() 
{ 
    // Whatever else... 
    $this->app->register('Collective\Html\HtmlServiceProvider'); 

    // Load HTML and Form aliases 
    $loader = \Illuminate\Foundation\AliasLoader::getInstance(); 

    $loader->alias('HTML', 'Collective\Html\HtmlFacade'); 
    $loader->alias('Form', 'Collective\Html\FormFacade'); 
} 

, bu yüzden de kullanılabilir.

İlgili konular