lavavel门面(facade)分析

 1.某模板使用了门面

2.在app.php中,发下JsValidator是某类的别名

3.去查看这个类,也就是JsValidatorFacade门面,从下图的getFacadeAccessor方法可以看出,此门面要调用app中已经注册的叫做'jsvalidator'的东东(我不知道如何合理查到jsvalidator这个东东,我是从文件里搜索出来的)

4.按laravel文档,需要注册,才能使用哦

(所有服务提供者都是通过配置文件 config/app.php 中进行注册)

,经我搜索,注册的位置是在下图

5.然后我打开这个CanvasServicePorvider类所在的文件,终于找到js的注册位置了,原来注册也可以嵌套

6.返回来,再看模板中使用的门面的formrequest方法,看起来像是调用门面的静态方法,其实不是,按手册说,内部实际调用的实例化对象的方法,也就是JsValidatorFactory的formrequest方法

7.看一下JsValidatorFactory的formrequest

总结:

1.服务,必须注册才能使用

2.门面,就是一种快捷的方法,去指定使用哪个服务

原文地址:https://www.cnblogs.com/ch459742906/p/7505128.html