darkknightik / nette-injects-extension
Nette 框架依赖注入扩展,用于将服务注入到其他服务的属性中。
v0.1.0
2013-12-12 18:17 UTC
Requires
- php: >=5.3.1
- nette/nette: ~2.1.0-RC2@rc
This package is not auto-updated.
Last update: 2024-10-02 10:04:43 UTC
README
Nette 框架依赖注入扩展,用于将服务注入到其他服务的属性中。
动机
编写构造函数/设置器注入有时很烦人,在开发过程中可能会消耗很多时间。此外,如果没有必要(例如在小型应用、非公开项目等),则无需处理显式注入会更简单。
要求
- PHP 5.3.1 或更高版本
- Nette 2.3 或更高版本
安装
-
将 "
majkl578/nette-injects-extension
" 添加到 composer.json 中的依赖项。别忘了运行composer update
。 -
在配置文件中的扩展部分将此 DI 扩展注册为最后一个
injects: Majkl578\NetteAddons\Injects\DI\Extension\InjectsExtension
-
删除缓存。
完成。 ;)
用法
支持所有类型的实例属性 - 公共的、受保护的,以及私有的。您还可以注入一组类,例如实现一个接口的所有实现者。也适用于命名空间代码和用法。
class Foo { /** * @inject * @var Foo */ public $foo; /** * @inject * @var Bar */ protected $bar; /** * @inject * @var Baz */ private $baz; /** * @inject * @var IWatcher[] */ protected $watchers; }
问题
如果有任何问题,请在 GitHub 上留下问题(或者,更好的是,发送一个 pull 请求)。