Sobes.tech
Junior — Middle

Дар Dagger, барои ворид кардани вобастагии хориҷӣ ба компонент, кадом анотацияро истифода мебаранд?

sobes.tech AI

Ҷавоб аз AI

Барои ворид кардани вобастагии хориҷӣ ба компонентии Dagger, истифода мешавад аннотатсияи @Component.Builder ё @Component.Factory, ва барои гузаронидани худи вобастагӣ — аннотатсияи @BindsInstance.

Масалан, агар лозим ояд, ки объекте, ки берун аз Dagger сохта шудааст, гузаронида шавад, метавонед @BindsInstance-ро дар бунёдгари компоненти истифода баред:

@Component
interface MyComponent {
    void inject(MyClass target);

    @Component.Builder
    interface Builder {
        @BindsInstance
        Builder externalDependency(ExternalDependency dep);
        MyComponent build();
    }
}

Бинобар ин, @BindsInstance имкон медиҳад, ки вобастагии хориҷӣ ба графи вобастагиҳои компоненти ворид карда шавад.