File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed
Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change 1717<a name =" introduction " ></a >
1818## 简介
1919
20- Laravel 事件机制实现了一个简单的观察者模式,为我们提供订阅和监听应用中出现的各种事件 。 Event 类通常保存在 ` app/Events ` 目录下,而它们的 listeners 类被保存在 ` app/Listeners ` 目录下。如果你在应用中看不到这些文件夹也不要担心,因为当你使用 Artisan 命令来生成事件和监听器时他们会被自动创建 。
20+ Laravel 事件机制实现了一个简单的观察者模式,让我们可以订阅和监听应用中出现的各种事件 。 Event 类通常保存在 ` app/Events ` 目录下,而它们的 listeners 类被保存在 ` app/Listeners ` 目录下。如果你在应用中看不到这些文件夹也不要担心,因为当你使用 Artisan 命令来生成事件类(Event)和监听器(Listener)类时他们会被自动创建 。
2121
2222事件机制是一种很好的应用解耦方式,因为一个事件可以拥有多个互不依赖的监听器。例如,每次把用户的订单发完货后都希望给他发个 Slack 通知。这时候你可以发起一个 ` OrderShipped ` 事件,它会被监听器接收到再传递给 Slack 通知模块,这样你就不用把订单处理的代码跟 Slack 通知的代码耦合在一起了。
2323
@@ -149,7 +149,7 @@ Laravel 应用中的 `EventServiceProvider` 提供了一个很方便的地方来
149149
150150如果你的监听器中需要实现一些耗时的任务,比如发送邮件或者进行 HTTP 请求,那把它放到队列中处理是非常有用的。在使用队列化监听器之前,一定要在服务器或者本地环境中配置 [ 队列] ( /docs/{{version}}/queues ) 并开启一个队列监听器。
151151
152- 要对监听器进行序列化的话 ,只需增加 ` ShouldQueue ` 接口到你的监听器类。由 Artisan 命令 ` event:generate ` 生成的监听器已经将此接口导入到命名空间了,因此你可以直接使用它:
152+ 要对监听器进行队列化的话 ,只需增加 ` ShouldQueue ` 接口到你的监听器类。由 Artisan 命令 ` event:generate ` 生成的监听器已经将此接口导入到命名空间了,因此你可以直接使用它:
153153
154154 <?php
155155
You can’t perform that action at this time.
0 commit comments