o5/nette-injects-extension

Nette 框架 DI 扩展,用于将服务注入其他服务的属性中。

这个包的官方仓库似乎已经不存在了,因此该包已被冻结。

安装: 294

依赖者: 0

建议者: 0

安全性: 0

星标: 1

关注者: 1

分支: 2

类型:nette-addon

v0.1.5 2014-09-12 15:19 UTC

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 或更高版本

安装

  1. 在 composer.json 的依赖项中添加 "majkl578/nette-injects-extension"。别忘了运行 composer update

  2. 在配置文件的扩展部分将此 DI 扩展作为最后一个注册

    injects: \Majkl578\NetteAddons\Injects\DI\InjectsExtension
    
  3. 删除缓存。

完成了。 ;)

用法

支持所有类型的实例属性 - 公共、受保护以及私有。您还可以注入一组类型的类,例如所有实现接口的类。也与命名空间代码和用法兼容。

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)。