facadeはどのようにin laravelを生成しますか?

1863 ワード

Facadeは書き方を簡略化するため、覚えやすく、この特性を廃止すると言う人もいるそうですが、この特性にはテスタビリティのテスト性があるそうですが、私にはわかりませんが、これはどのように言った理由ですか?
多くのFacadeはシステムで書かれていて、illuminatesupportFacadeの下にあります.
からcallStaticという方法で入手し、
 
public static function __callStatic($method, $args)
{
$instance = static::getFacadeRoot();

if (! $instance) {
throw new RuntimeException('A facade root has not been set.');
}

return $instance->$method(...$args);
}

 
$instanceはこのfacadeのgetFacadeAccessorが返す文字列がservice containerの中で代表するオブジェクトで、この中にthrowヒントエラーがあって、このように比較的に友好的なようですか?
return$instanceがfacade静的呼び出しを呼び出す方法.終わりました.それはテストにどのような影響がありますか?