事件

未匹配的标注
本文档最新版为 6.x,旧版本可能放弃维护,推荐阅读最新版!

事件

简介

Lumen 的事件提供了一个简单的监听器实现,允许你在应用程序中对事件进行订阅和监听。事件类通常都被保存在 app/Events 目录下,而监听类都被保存在 app/Listeners 目录下。

与 Larvel 的不同之处

一般来说,Lumen中的事件很像 Laravel 全栈框架的功能,所以请阅读完整的 Laravel 文档。在 Lumen 中也支持事件广播,它允许客户端的 JavaScript 去监听服务端的事件。然而,这里还是有些差异值得讨论。

生成器

在 Lumen 框架中,不再有用来生成事件和监听器的命令,因此你可以通过简单的复制 ExampleEvent 或者 ExampleListener 类来定义你自己的事件和监听器。这两个示例文件提供了每个事件和监听器的基础类结构。

注册事件/监听器

像 Laravel 框架一样, EventServiceProvider 类提供了一个注册所有事件监听器的地方。 listen 属性是一个包含了所有的事件(键)和监听器(值)的数组。当然,你可以根据应用程序的需要添加事件到这个数组:

/**
 * The event listener mappings for the application.
 *
 * @var array
 */
protected $listen = [
    'App\Events\ExampleEvent' => [
        'App\Listeners\ExampleListener',
    ],
];

触发事件

你可以在应用程序中使用 event 辅助函数或者 Event的门面去触发事件。同样这些函数的行为与 Laravel 框架一致:

event(new ExampleEvent);

Event::dispatch(new ExampleEvent);

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/lumen/5.5/event...

译文地址:https://learnku.com/docs/lumen/5.5/event...

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
贡献者:3
讨论数量: 0
发起讨论 只看当前版本


暂无话题~