sealed class 데이터 접근
322
1 asked
38 강의 내용 관련입니다.
import 'package:json_annotation/json_annotation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:note_app/domain/util/order_type.dart';
part 'note_order.freezed.dart';
@freezed
abstract class NoteOrder with _$NoteOrder {
const factory NoteOrder.title(OrderType orderType) = NoteOrderTitle;
const factory NoteOrder.date(OrderType orderType) = NoteOrderDate;
const factory NoteOrder.color(OrderType orderType) = NoteOrderColor;
}위의 코드는 타입 매칭을 위한 거기 때문에 아래와 같이 dart 에서 지원하는 sealed 클래스를 사용하는 방법으로 고쳤습니다.
import 'package:note_app/domain/util/order_type.dart';
sealed class NoteOrder<T> {
const factory NoteOrder.title(OrderType orderType) = NoteOrderTitle;
const factory NoteOrder.date(OrderType orderType) = NoteOrderDate;
const factory NoteOrder.color(OrderType orderType) = NoteOrderColor;
}
class NoteOrderTitle<T> implements NoteOrder<T> {
final OrderType orderType;
const NoteOrderTitle(this.orderType);
}
class NoteOrderDate<T> implements NoteOrder<T> {
final OrderType orderType;
const NoteOrderDate(this.orderType);
}
class NoteOrderColor<T> implements NoteOrder<T> {
final OrderType orderType;
const NoteOrderColor(this.orderType);
}
order_section.dart 에서
Radio<NoteOrder>(
value: NoteOrder.title(noteOrder.orderType),
groupValue: noteOrder,
onChanged: (NoteOrder? value) {
onOrderChanged(NoteOrder.title(noteOrder.orderType));
},
activeColor: Colors.white,
),dart 지원 sealed 클래스를 사용하면 noteOrder.orderType에 접근이 안 되는데 어떻게 수정해야 할까요?
Answer 1
0
위에 코드만 봐서는 잘 모르겠네요.
일단, 기존 코드를 dart 제공 코드로 만들어도 되지만
기존 freezed 코드에서 abstract 떼고 sealed 넣어도 무방합니다.
MVVM, 클린 아키텍처 관련 질문 있습니다.
0
85
2
가끔씩 ui가 깨지는? 현상이 있어서 질문드립니다.
0
90
1
freezed 3.0 대응된 코드 깃헙에도 업데이트 해주실 수 있으신가요?
0
176
3
sealed class 사용시 기능은 동작하지만 Radio위젯에 선택 표시가 안되는 부분 질문
0
117
2
sealed class 사용시 The getter 'orderType' isn't defined for the type 'NoteOrder<dynamic>' 오류
0
91
2
유즈케이스 관련하여 질문 드립니다.
0
90
1
mockito사용시 오류 해결법
1
122
2
sealed class 사용 문의2
0
74
2
sealed class 사용 문의
0
116
2
freezed3.0에서 build시 when생성되지 않습니다.
0
261
2
Try implementing the missing methods, or make the class abstract. 문제해결 공유
0
235
2
This is likely caused by a misconfigured builder definition. 오류 해결 방법
1
314
3
강의 화면이 안보여요
0
132
3
Flutter에서 추천하는 Navigator, Router
0
320
2
The following ProgressEvent object was thrown resolving an image codec: [object ProgressEvent]
0
324
3
event와 ui_event
0
211
1
코드 색깔 관련 질문
0
207
1
Photo.fleezed.dart,photo.g.dart삭제시 에러
0
202
2
sealed class 적용 시...
0
325
1
클린 아키텍처 질문
0
307
1
서버에서 데이터를 가져와서 사용하는 경우...
0
229
1
뷰/뷰모델 작성 질문
0
269
1
freezed JsonKey 사용 예시 공유
1
788
1
아이폰에서 APP 실행 안되는 현상
0
638
1

