한 클래스 안의 변수를 다른 클래스 안에서 사용하고 싶다면?
부모 위젯의 state를 자식위젯이 쓰려면?
자식 위젯한테 전송을 해야 함
showDialog(context: context, builder: (context){
return DialogUI(state: a);
});
작명 -> state
보낼 state -> a
자식위젯({key? key, this.작명})
var 작명;
(에러나면 앞에 const 지워보자. 지우기 싫으면
var 작명 대신 final 작명; 이렇게 써보기)
-> final로 만들면 수정 안됨
관습적으로 final을 많이 씀
부모 위젯에서 가져온 변수 잘 변경 안 하기 때문
class DialogUI extends StatelessWidget {
DialogUI({Key? key, this.state}) : super(key: key);
var state;
또는
class DialogUI extends StatelessWidget {
const DialogUI({Key? key, this.state}) : super(key: key);
final state;
DialogUI(a, b)
내가 만든 함수에서 a,b라는 파라미터를 쓸 수 있다는 뜻
DialogUI({})
이렇게 중괄호 쓰면 선택적으로 파라미터 쓴다는 의미
-> DialogUI(state : '123')
Text(state.toString())
+) 추가로!!
state 전송은 부모에서 자식으로만 가능
자식 -> 부모, 자식 -> 자식 이렇게 안 됨