ошибка в Zenject - Unable to resolve 'A' while building object with type 'B'. Object graph:
Ошибка: ZenjectException: Unable to resolve 'PiesOfIngridient' while building object with type 'Ingredient'. Object graph: Ingredient
using UnityEngine;
using Zenject;
public sealed class GameInstaller : MonoInstaller // в SceneСontext
{
[SerializeField]
private Lavash _lavash;
public override void InstallBindings()
{
this.Container
.Bind<Lavash>()
.FromInstance(this._lavash)
.AsSingle();
}
}
using UnityEngine;
using Zenject;
public sealed class IngridientInstaller : MonoInstaller // в GameObject Context
{
[SerializeField]
private PiesOfIngridient Ingr; // префаб ингредиента для спавна
[SerializeField]
private Ingredient basket;
public override void InstallBindings()
{
this.Container
.Bind<Ingredient>()
.FromInstance(this.basket)
.AsSingle();
this.Container
.Bind<PiesOfIngridient>()
.FromNewComponentOnNewPrefab(this.Ingr)
.AsSingle();
}
}
public class Ingredient : MonoBehaviour
{
private PiesOfIngridient ingr; // префаб ингридиента
private Lavash lavash;
[Inject]
public void Construct(Lavash _lavash, PiesOfIngridient _ingr)
{
lavash = _lavash;
ingr = _ingr;
}
Ответы (1 шт):
Автор решения: Anick
→ Ссылка
Оказалось что GameObject Context просто не видел мой класс из-за того что тот не являлся его дочериным объектом. Из-за этого не все зависимости перекидывались!