use_super_parameters 진단: 생성자 매개변수는 super 매개변수로 넘겨요

use_super_parameters 진단: 생성자 매개변수는 super 매개변수로 넘겨요

Dart 분석기가 내보내는 진단에는 이름이 있어요. use_super_parameters생성자의 매개변수가 참조되거나 수정되지 않은 채 super 생성자에 그대로 전달될 때 분석기가 알려주는 린트 규칙이에요. 그런 경우 super 매개변수를 쓰면 코드가 훨씬 간결해져요.

출처: use_super_parameters

본문

설명

분석기는 생성자의 매개변수가 참조되거나 수정되지 않고 super 생성자에 전달되는데 super 매개변수를 사용하지 않을 때 이 진단을 만들어요.

super 매개변수는 Dart 2.17에서 도입된 문법이에요. 매개변수를 받아서 그대로 super 생성자에 넘기는 일만 한다면, super.를 붙인 매개변수 하나로 선언과 전달을 동시에 할 수 있어요.

예시

다음 코드는 B의 생성자 매개변수들이 super 생성자의 인자로만 사용되기 때문에 이 진단을 만들어요.

class A {
  A({int? x, int? y});
}

class B extends A {
  B({int? x, int? y}) : super(x: x, y: y);
}

흔한 해결 방법

인자를 전달할 때 super 매개변수를 쓰면 돼요.

class A {
  A({int? x, int? y});
}

class B extends A {
  B({super.x, super.y});
}

더 알아보기