avoid_unnecessary_containers
avoid_unnecessary_containers
Dart 애널라이저가 생성하는 avoid_unnecessary_containers 진단에 대한 설명이에요. 생성자에 child:만 전달된 Container 인스턴스가 있을 때 발생해요.
출처: 원문
본문
위젯 트리에 Container 인스턴스가 있는데, 생성자에 전달된 유일한 인자가 child:일 때 이 진단이 발생해요.
예시
아래 코드는 Container 생성자를 호출할 때 child: 인자만 사용하기 때문에 이 진단을 만들어요.
import 'package:flutter/material.dart';
Widget buildRow() {
return Container(child: Row(children: [Text('a'), Text('b')]));
}
일반적인 수정 방법
생성자에 다른 인자도 제공하려 했다면 그 인자들을 추가해요.
import 'package:flutter/material.dart';
Widget buildRow() {
return Container(
color: Colors.red.shade100,
child: Row(children: [Text('a'), Text('b')]),
);
}
다른 인자가 필요 없다면 자식 위젯을 감싸지 말고 풀어내요.
import 'package:flutter/material.dart';
Widget buildRow() {
return Row(children: [Text('a'), Text('b')]);
}
더 알아보기
Container 위젯과 위젯 트리 구조에 대한 더 자세한 내용은 Flutter 문서와 API 문서를 참고해요.