3

フラッター プロジェクトで依存性注入のために get_it を使用しています。今、手書きの依存関係ファイルを注釈に置き換えるために、注入可能でそれをやろうとしています。

私には、ジェネリックであり、T の異なる値を 3 回注入する必要があるクラスがあるという特別なケースがあります。

class TestBloc<T> {
    ...
}

これは私の古い設定でどのように見えるかです:

sl.registerFactory(() => TestBloc<One>(...);
sl.registerFactory(() => TestBloc<Two>(...);
sl.registerFactory(() => TestBloc<Three>(...);

クラスに注釈を付けて機能させるにはどうすればよいですか?

@injectable を追加すると

@injectable
class TestBloc<T> {
    ...
}

私はこれを取得します(もちろん):

gh.factory<_i34.TestBloc<dynamic>>(() =>_i34.TestBloc<dynamic>(...);

これを取得するために注釈を付ける方法は?

gh.factory<_i34.TestBloc<One>>(() =>_i34.TestBloc<One>(...);
gh.factory<_i34.TestBloc<Two>>(() =>_i34.TestBloc<Two>(...);
gh.factory<_i34.TestBloc<Three>>(() =>_i34.TestBloc<Three>(...);
4

0 に答える 0