X



自作DIコンテナ作ってるんだが
■ このスレッドは過去ログ倉庫に格納されています
0001以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:28:27.860ID:PoRg/5gMa
基本的なDIは出来るようになった
あとスコープとかインスタンスのライフタイムとかつけたいんだがスコープを分ける方法がわからん
0002以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:31:26.057ID:IZ2pS67b0
いいね
0003以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:31:45.729ID:PoRg/5gMa
Container {
children: Vec<Container>
}
にしていくのか
Vec<{
key: Container
}>
にしていくのか
0004以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:32:19.689ID:PoRg/5gMa
>>2
馬鹿だからDIコンテナを知るためにDIコンテナを作ってる
0005以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:33:10.882ID:IZ2pS67b0
>>4
アホや
0006以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:33:11.016ID:PoRg/5gMa
下の場合別のデータクラス定義する必要があるか
0007以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:35:25.808ID:io+Qj6bjr
let child = container.createChild("child1")
みたいにして、スコープは
@Injectable({scope: "child1"})
な感じで指定するか
0008以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:37:13.891ID:io+Qj6bjr
>>5
わかる
でもなんかDIコンテナの動きって不思議じゃん?だから仕組み知りたいなって思わない?
大まかな動きは想像できるけど詳細を知りたかった
0009以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:41:21.866ID:io+Qj6bjr
あー
スコープって違うなライフタイム関連だな
コンテナはネストしなきゃだめだ
0010以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:43:35.340ID:io+Qj6bjr
やりやすいのからやっていくか
シングルトンデコレーターとオートインジェクションはすぐできそう
0011以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 14:58:49.815ID:6+O3EXWSr
登録時にSingletonスコープならグローバルスコープ用のレジストリにインスタンスを登録する
解決時にグローバルスコープ用のレジストリからインスタンスを持ってくる
Transientスコープなら解決時に都度インスタンスを生成する
Scopedスコープ:?
0012以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 15:05:40.276ID:yN4xth6Dr
スコープ用のマップをコンテナ内に持っておいて解決時に取り出せばいいのか
0013以下、5ちゃんねるからVIPがお送りします
垢版 |
2023/03/25(土) 15:07:32.102ID:yN4xth6Dr
もうだいぶ使えるな
■ このスレッドは過去ログ倉庫に格納されています