state 변경코드를 setState로 래핑하는 것과 setState 밖에서 실행하는 것의 차이
608
작성한 질문수 15
안녕하세요! 새해 복 많이 받으시기 바랍니다.
state를 변경하는 코드를 래핑하지 않고 그냥 실행 후 setState를 실행해도 build가 호출되면서 정상적으로 작동하는 것을 확인했습니다.
setState로 래핑하는 이유는 그냥 가독성을 위함 일까요??
답변 1
0
안녕하세요!
이미 직접 파악하신대로 setState() 함수는 단순히 build() 함수를 재실행하는 함수입니다.
말씀하신대로 먼저 상태를 변경한 후 콜백함수를 사용하지 않고 setState()를 실행하셔도 상태변경은 예상대로 일어납니다.
말씀하신대로 가독성을 위해서 내부에 작성해주시는게 좋다고 생각하시면 될 것 같습니다.
감사합니다!
198강 (){onTap(e);}의 이해 돕기
0
39
1
video_call 플러그인 설치후 에러 발생
0
47
1
SDK 안드로이드 설치 질문!
0
62
1
코드팩토리 디스코드 링크 다시 부탁드려요~
0
94
1
Webview를 이용해서 URL 상의 페이지 출력 불가
0
71
1
홈스크린 함수를 함축해서 main.dart에 옮기는 문제
0
57
1
플레이스토어
0
62
1
아고라 엔진 init 함수의 반환타입이 Future<void> 이것의 의미는 무엇인가요?
0
56
1
가이드라인 질문
0
59
0
emulator 에러 환경설정 뭐가 문제 일까요??
0
78
1
emulator 실행 오류
0
95
3
Column을 가로방향 최대 사이즈를 차지하도록 하는 방법에 관련
0
73
1
pubspec.yaml에서 font를 추가하면서 weight 값을 지정하는 것이 의미가 있는 것인지 문의
0
44
1
setState()를 호출하지 않으면 build가 실행 안되는 건가요?
0
54
1
video_call 플러그인 설치시 에러문제
0
67
1
children 안의 if 문에서 { } 못쓰는 이유?
0
51
1
이렇게 오류가 떠요
0
67
1
AppBar 사용했는데
0
64
2
[문제해결] '오늘도 출첵!' 의 171번 강의에서 중요한 문제를 발견했습니다
0
59
1
StatefulWidget 실습 에러가 발생합니다.[해결완료]
0
65
1
Video Player 프로젝트에 대한 추가 질문
0
54
0
Row위젯이나 column위젯의 위치는 누가 정하나요??
0
43
1
geolocator 오류때문에 개발진행이 불가능입니다
0
64
1
API 관련 이슈
0
89
2





