Неразрешенная зависимость в инстанцированном игровом объекте

Установщик:

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 или использовать фабрики.

Другие вопросы по тегам