Неразрешенная зависимость в инстанцированном игровом объекте
Установщик:
class MainInstaller : MonoInstaller<MainInstaller>
{
[SerializeField]
private StateController StateController;
public override void InstallBindings()
{
Container.BindInstance( StateController );
}
}
Поведение с инъекцией:
class Foo : MonoBehaviour
{
[Inject]
private StateController StateController;
void Start()
{
UpdateObject( StateController.Current );
}
}
Проблема в StateController
ноль в UpdateObject
,
Должен ли я создать экземпляр gameobject как-то особенно?
1 ответ
Решение
Вот ответ https://github.com/modesttree/Zenject/issues/57.
GameObject.Instantiate
не разрешает зависимости. Надо использовать DiContainer.InstantiatePrefab
или использовать фабрики.