execut / yii2-dependencies
用于模块之间解耦依赖的Yii2组件
0.5.0
2021-03-09 06:53 UTC
Requires
- yiisoft/yii2: @dev
README
用于隔离模块之间联系的工具。例如,有一个用户模块,其中包含与其他模块的关联,例如获取数据
需要向模块添加对插件的支持,使用PluginBehavior特性,并通过实现模块Plugin接口将此功能移至插件中
<?php namespace execut\users; interface Plugin { public function sendRecoveryMessage($user); }
<?php namespace execut\users; use execut\dependencies\PluginBehavior; use execut\users\Plugin; /** * Class Module * * @mixin PluginBehavior * @package execut\userTags */ class Module extends \yii\base\Module implements Plugin { public function behaviors() { return [ 'plugin' => [ 'class' => PluginBehavior::class, 'pluginInterface' => Plugin::class, ], ]; } public function sendRecoveryMessage($user) { return $this->getPluginsResults(__FUNCTION__, false, func_get_args()); } }