use_key_in_widget_constructors — 공개 위젯 생성자에는 key 인자를

use_key_in_widget_constructors — 공개 위젯 생성자에는 key 인자를

공개된 위젯을 만들 때는 생성자에서 key를 넘길 수 있게 열어 두는 게 좋아요. Flutter에서는 super.key를 받아 주면 되죠.

출처: use_key_in_widget_constructors

본문

이 규칙은 위젯 생성자에 key를 쓰도록 권장해요. 공개 위젯을 만들 때 key를 제공할 수 있게 해 두는 게 좋은 습관이에요.

BAD:

class MyPublicWidget extends StatelessWidget {
}

GOOD:

class MyPublicWidget extends StatelessWidget {
  const MyPublicWidget({super.key});
}

key를 받을 수 있게 열어 두지 않으면, 이 위젯을 쓰는 쪽에서 리스트 안의 위젯을 구분하거나 상태를 유지해야 할 때 key를 줄 방법이 없어져요. const MyPublicWidget({super.key});처럼 생성자를 만들어 두면 위젯을 사용하는 모든 곳에서 얼마든지 key를 전달할 수 있죠.

더 알아보기

규칙을 활성화하려면 analysis_options.yaml 파일의 linter > rules 아래에 use_key_in_widget_constructors를 추가하면 돼요.

linter:
  rules:
    - use_key_in_widget_constructors

YAML 맵 문법으로 규칙을 설정한다면 linter > rules 아래에 use_key_in_widget_constructors: true를 쓰면 돼요.

linter:
  rules:
    use_key_in_widget_constructors: true