작성
·
331
0
class _Test extends StatelessWidget {
const _Test({super.key});
@override
Widget build(BuildContext context) {
return const Placeholder();
}
}
stateless를 탭으로 눌러서 자동 생성했을 때 super.key 부분이 이렇게 생성이 되는데 이건 축약표현인가요?
이경우,
final VoidCallback onPressed;
const _Test({required this.onPressed, key});
위 코드를 작성해도 되는 것인지 아니면 강의처럼 아래코드로 작성해야하는지 궁금합니다!
final VoidCallback onPressed;
const _Test({required this.onPressed, Key? key}) : super(key: key);
답변 1
0
안녕하세요!
첫번째와 두번째의 차이는 key를 넣어주고 안넣어주고의 차이입니다.
안넣어줘도 에러가 안나는 이유는 required 파라미터가 아니기 때문입니다.
어차피 key를 안넣어준다면 차이가 없겠지만 key를 넣어줘야하는 상황이 생긴다면 실제 위젯으로 key가 전달되지 않기때문에 잉여 파라미터가 됩니다.
감사합니다!