annotations-design-patterns
    Preparing search index...

    Class Container

    Contenedor de inyección de dependencias 100 % TC39 (sin experimentalDecorators ni reflect-metadata). Las dependencias se inyectan por CAMPOS con @Inject; las clases se registran con @Injectable o manualmente con register.

    Detecta ciclos de resolución (por ejemplo, A inyecta B y B inyecta A) y lanza CircularDependencyError con la ruta de tokens implicada.

    const container = new Container();
    const CONFIG = new InjectionToken<Config>('config');
    container.register(CONFIG, { useValue: { apiUrl: '...' } });

    @Injectable(container)
    class Repo {
    @Inject(container, CONFIG)
    private config!: Config;
    }

    container.resolve(Repo);
    Index