| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- JQ
- 앱심사
- java 출력
- riverpod
- Flutter
- 자바 출력 방식
- println
- java
- unity
- npm
- lifecycle
- LLM
- DART
- java 콘솔 출력 차이
- firebase
- abap
- 배포
- develop
- 자바 포맷 출력
- printf
- scss
- Clean Architecture
- JS
- 자바스크립트
- 엡
- UI/UX
- 단축키
- react
- nodejs
- ListView
- Today
- Total
목록2025/10/09 (2)
guricode
“글 상세 → 글 수정 → 수정한 글 상세” 이렇게 이동했는데,수정이 끝나고 상세 화면에서 뒤로가기를 누르면 수정 전 글이 보이는 현상.나도 처음엔 Firestore 업데이트가 늦게 반영된 건가 싶었는데,실제로는 데이터 문제가 아니라 라우팅 스택 구조 문제였다.GoRouter나 Navigator는 화면을 이동할 때 “스택” 구조로 쌓인다.즉, push로 이동하면 기존 화면 위에 새로운 화면이 쌓이고,pop을 누르면 그 위에 있는 화면만 제거된다.지금 구조를 보면 이렇다.글 상세글 수정수정한 글 상세 (push 또는 pushReplacement로 이동)이 상태에서 뒤로가기 하면 “글 수정 전 상세”가 그대로 밑에 있어서결국 예전 데이터를 다시 보게 되는 거다.이건 Firestore 캐시나 타이밍 문제가 아..
코드를 짜다 보니 ref.listen을 initState() 안에 넣어뒀는데, 이게 문제였다.ref.listen은 Riverpod이 위젯을 빌드하는 중에만 호출할 수 있는데,initState()는 위젯이 아직 빌드 트리에 올라가기 전이라 Provider랑 연결이 안 돼 있다.그래서 실행하자마자 아래 오류가 터졌다.ref.listen can only be used within the build method of a ConsumerWidgetFailed assertion: 'debugDoingBuild'결국 정리하자면“빌드 전에 ref.listen을 불러서 Riverpod이 감시 대상을 찾을 수 없었던 것”즉, 위젯이 완전히 만들어지기 전에 감시를 걸어서 생긴 구조적인 오류였다. 아래처럼 initState ..