Zenject 很棒,但我还没有找到合适的解决方案来实例化游戏对象
我有一个脚本,它为单一行为事件提供各种事件挂钩。Start、PostStart、Update、FixedUpdate 等,因此非 Unity 控制器可以在某些事件中执行。它基于我命名为“IEventsController”的接口
我之前的设置是这样的:
private static IEventsController _Events;
public static IEventsController GetEvents()
{
if (_Events == null)
{
var go = new GameObject("EventsController");
_Events = go.AddComponent<EventsController>();
}
return _Events;
}
我试图弄清楚 Zenject 是否有内置的解决方案。我可以使用工厂或方法,但是当 Zenject 可能已经处理它时,工厂有一个额外的类来管理它。使用一种方法来生成它仍然需要静态引用来检查它是否被创建,并且将它放在安装程序脚本中感觉不对。此外,还有 FromComponent 系列的绑定可能对此有所帮助,但到目前为止我还没有看到任何内容。
我可能期望的示例绑定方法调用:
Container.BindComponent<IEventsController>()
.To<EventsController>()
.ViaNewGameObject("Events Controller");
- 谢谢。