【发布时间】:2018-12-16 14:41:08
【问题描述】:
我读了 laravel 文档说,
如果您的提供商仅在服务中注册绑定 容器,您可以选择将其注册推迟到其中一个 实际上需要注册的绑定。
我不明白什么是“仅注册绑定”。我谷歌并阅读了很多文章,但我没有找到答案。 你能帮我理解一下吗!
非常感谢^^
【问题讨论】:
标签: laravel deferred service-provider
我读了 laravel 文档说,
如果您的提供商仅在服务中注册绑定 容器,您可以选择将其注册推迟到其中一个 实际上需要注册的绑定。
我不明白什么是“仅注册绑定”。我谷歌并阅读了很多文章,但我没有找到答案。 你能帮我理解一下吗!
非常感谢^^
【问题讨论】:
标签: laravel deferred service-provider
这是关于 Bindings 的 Laravel 文档。简而言之 - 它告诉服务容器在需要某个类或接口时返回什么。 (您可以通过阅读 PHP 中的依赖注入和依赖注入来了解更多信息)。但是 Laravel 服务提供者不仅限于绑定容器中的类。在提供者中,您可以指向路由文件夹、注册 view() 作曲家等...
如果除了注册绑定之外,您的服务提供者中没有任何其他代码,那么您可以推迟它,以便代码运行得更快。但是,例如,如果您在服务提供商中注册了第二个路由文件夹 - 那么您不应该推迟注册服务提供商。
【讨论】:
HorizonServiceProvider,它不仅仅是为服务容器添加绑定。如果您推迟其执行,则某些功能将无法工作,直到您需要绑定在提供程序中的服务之一。
web 和api 文件夹的路由
IdeHelperServiceProvider 被推迟,但有一个 boot 方法?