Showing
1 changed file
with
29 additions
and
0 deletions
@@ -200,6 +200,35 @@ Get의 인스턴스에서 삭제합니다: | @@ -200,6 +200,35 @@ Get의 인스턴스에서 삭제합니다: | ||
200 | Get.delete<Controller>(); // 보통 GetX는 미사용 controller를 삭제하기 때문에 수행할 필요가 없습니다 | 200 | Get.delete<Controller>(); // 보통 GetX는 미사용 controller를 삭제하기 때문에 수행할 필요가 없습니다 |
201 | ``` | 201 | ``` |
202 | 202 | ||
203 | +## 대체 인스턴스 지정 | ||
204 | + | ||
205 | +현재 추가된 인스턴스는 `replace` 또는 `lazyReplace` 메소드를 사용하여 유사하거나 확장된 클래스 인스턴스로 교체할 수 있습니다. 이후 원본 클래스를 사용하여 찾을 수 있습니다. | ||
206 | +```dart | ||
207 | +abstract class BaseClass {} | ||
208 | +class ParentClass extends BaseClass {} | ||
209 | + | ||
210 | +class ChildClass extends ParentClass { | ||
211 | + bool isChild = true; | ||
212 | +} | ||
213 | + | ||
214 | + | ||
215 | +Get.put<BaseClass>(ParentClass()); | ||
216 | + | ||
217 | +Get.replace<BaseClass>(ChildClass()); | ||
218 | + | ||
219 | +final instance = Get.find<BaseClass>(); | ||
220 | +print(instance is ChildClass); //true | ||
221 | + | ||
222 | + | ||
223 | +class OtherClass extends BaseClass {} | ||
224 | +Get.lazyReplace<BaseClass>(() => OtherClass()); | ||
225 | + | ||
226 | +final instance = Get.find<BaseClass>(); | ||
227 | +print(instance is ChildClass); // false | ||
228 | +print(instance is OtherClass); //true | ||
229 | +``` | ||
230 | + | ||
231 | + | ||
203 | ## 메서드간의 차이점 | 232 | ## 메서드간의 차이점 |
204 | 233 | ||
205 | 첫째, Get.lazyPut의 `fenix`와 다른 메서드들의 `permanent`을 살펴보겠습니다. | 234 | 첫째, Get.lazyPut의 `fenix`와 다른 메서드들의 `permanent`을 살펴보겠습니다. |
-
Please register or login to post a comment