o5 / nette-injects-extension
Nette 框架 DI 扩展,用于将服务注入其他服务的属性中。
这个包的官方仓库似乎已经不存在了,因此该包已被冻结。
v0.1.5
2014-09-12 15:19 UTC
Requires
- php: >=5.3.1
- nette/nette: ~2
This package is not auto-updated.
Last update: 2020-05-11 10:36:56 UTC
README
Nette 框架 DI 扩展,用于将服务注入其他服务的属性中。
动机
编写构造函数/设置器注入有时很烦人,在开发过程中可能会消耗很多时间。另外,如果不需要(例如在小型应用程序、非公开项目等),则不必担心显式注入会更简单。
要求
- PHP 5.3.1 或更高版本
- Nette 2.2 或更高版本
安装
-
在 composer.json 的依赖项中添加 "
majkl578/nette-injects-extension
"。别忘了运行composer update
。 -
在配置文件的扩展部分将此 DI 扩展作为最后一个注册
injects: \Majkl578\NetteAddons\Injects\DI\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 request)。