Flutter 로 매개변수로 값을 받아올때 오류를 방지 하기 위해 2가지 방법이 있습니다. default value, required 이둘은 null safety 방지로 많이 사용하며 그 예제들을 살펴 봅시다
# 파라미터를 중괄호로 묶음
String printName({String name, int age, String country}) {
return "My name is $name and i am $age from $country";
}
# 매개변수의 이름을 지정
void main() {
print(printName(
name: 'John',
age: 18,
country: 'Korea',
));
}
간단한 예제를 들고 왔고 이 친구를 컴파일 했을때 에러가 발생합니다. 함수로 넘어오는 파라미터는 null인 상태로 오면 절대 안됩니다.
이를 방지하기 위해 1번째 default value 를 사용해 봅시다 .
default value
String printName({
String name = "anon",
int age = 15,
String country = 'America',
}) {
return "My name is $name and i am $age from $country";
}
void main() {
print(printName(
name: 'John',
age: 18,
country: 'Korea',
));
}
기본 디폴트 값을 미리 설정을 해주고 그다음으로 매게변수를 받아오면 null인 상태가 아니기 때문에 오류가 나지 않습니다.
2번째인 required 입니다
required
사전적 의미로는 필수의 입니다. 쉽게 생각해서 추상 클래스랑 비슷하다고 생각하면 됩니다.
String printName({
required String name,
required int age,
required String country,
}) {
return "My name is $name and i am $age from $country";
}
void main() {
print(printName(
name: 'John',
age: 18,
country: 'Korea',
));
}
디폴트 밸류 에 값이 들어가는 대신 자료형 앞에 required 가 들어갑니다.
아래 코드와 같이 required 가 지정된 파라미터는 반드시 함수 호출 시기에 값이 포함되어야 합니다. 그렇지 않을 경우 아래와 같이 컴파일 에러 발생됩니다.
flutter 에서 많이들 사용하고 있습니다.
'모바일 공부 > Flutter' 카테고리의 다른 글
StatelessWidget,StatefulWidget 알아보기 (0) | 2024.01.05 |
---|---|
flutter 이미지 업로드 (0) | 2024.01.05 |
플러터 클래스 이용해보기 (1) | 2024.01.03 |
플러터 그라데이션 주기 (1) | 2024.01.03 |
MaterialApp,Scaffold 간단하게 알아보기 (2) | 2024.01.02 |