반응형
여러 가지 테스트를 하던 중에 생소하고 낯선 경고를 발견했다.
이름인즉슨,
Sort child properties last in widget instance creations.
파파고를 돌려보면
위젯 인스턴스 작성의 마지막 하위 속성을 정렬합니다.
라는 내용이다. 이게 무슨 말???
인가하니 <Widget>[] 인스턴스의 마지막에 위치한 child를 정렬한다는 뜻이다.
왜 이런 어려운 말을 할까?
//Bad example
children: <Widget>[
TextButton(
onPressed: () {},
child: const Text('Go to ScreenA'),
style: TextButton.styleFrom(
backgroundColor: Colors.red,
primary: Colors.black,
),
)
//Good example
children: <Widget>[
TextButton(
onPressed: () {},
style: TextButton.styleFrom(
backgroundColor: Colors.red,
primary: Colors.black,
),
child: const Text('Go to ScreenA'),
)
둘의 차이가 보이는가??
바로 <Widget>[]의 child가 어느 곳에 위치해 있는가이다.
그렇다.
보기 깔끔하고, 다양한 IDE에서 적절한 지원을 해줄 수 있게 이런 포맷을 사용하라고 권고하는 것이다.
그렇기에 경고 메세지로 뜨는 것이었다.
참고
https://dart-lang.github.io/linter/lints/sort_child_properties_last.html