1)

2) const 미사용
import 'package:flutter/material.dart';
class HomeScreen extends StatefulWidget {
const HomeScreen({Key? key}) : super(key: key);
@override
State<HomeScreen> createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
width: MediaQuery.of(context).size.width,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TestWidget(label: 'test1'),
TestWidget(label: 'test2'),
ElevatedButton(
onPressed: () {
setState(() {});
},
child: Text(
'빌드!',
),
),
],
),
),
);
}
}
class TestWidget extends StatelessWidget {
final String label;
const TestWidget({
Key? key,
required this.label,
}) : super(key: key);
@override
Widget build(BuildContext context) {
print('$label 빌드 실행');
return Container(
child: Text(
label,
),
);
}
}

3) const 사용
import 'package:flutter/material.dart';
class HomeScreen extends StatefulWidget {
const HomeScreen({Key? key}) : super(key: key);
@override
State<HomeScreen> createState() => _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
width: MediaQuery.of(context).size.width,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TestWidget(label: 'test1'),
const TestWidget(label: 'test2'),
ElevatedButton(
onPressed: () {
setState(() {});
},
child: const Text(
'빌드!',
),
),
],
),
),
);
}
}
class TestWidget extends StatelessWidget {
final String label;
const TestWidget({
Key? key,
required this.label,
}) : super(key: key);
@override
Widget build(BuildContext context) {
print('$label 빌드 실행');
return Container(
child: Text(
label,
),
);
}
}

- const를 사용하면 첫 빌드시 미리 저장해놓기 때문에 효율적이다!!
'개발이 좋아서 > Flutter가 좋아서' 카테고리의 다른 글
| [flutter] button_ElevaredButton, OutlinedButton, TextButton, ButtonStyle (0) | 2023.01.03 |
|---|---|
| [flutter] 랜덤숫자 생성기 (0) | 2023.01.03 |
| [flutter] 만난지 며칠 U&I (0) | 2022.12.29 |
| [flutter] DateTime (0) | 2022.12.28 |
| [flutter] 전자액자 만들기 (1) | 2022.12.27 |