FlutterError (Tried to listen to an InheritedWidget in a life-cycle that will never be called again.
context.watch<T>() ๋ฉ์๋๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ณ๊ฒฝ๋ ์ํ๋ฅผ ํ์ธํ๊ณ ๋ฆฌ๋น๋ํ๋ ๋ฉ์๋์ด๋ค. ํ์ง๋ง ์์ ์ฐ์ฌ์ง create ๋ฉ์๋๋ ํ ๋ฒ๋ง ํธ์ถ๋๊ณ ์ดํ ๋ณํ๊ฐ ์๊ธฐ๋๋ผ๋ ํธ์ถ๋์ง ์์ watch๋ฉ์๋๋ฅผ ์ด ์๋ฏธ๊ฐ ์๊ณ ์ด๋ฅผ ์ปดํ์ผ ์๋ฌ๋ก ์ก์์ค๋ค. ๋ฐ๋ผ์ ํ ๋ฒ๋ง ํธ์ถ๋๋ create ์์์๋ read ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ค๋ค.
๊ทธ๋ ๋ค๋ฉด ๊ฐ์ ๋ณํ๋ฅผ ํ์งํ ์ ์๊ณ ์ด๊ธฐ ์ํ๋ง ์ฝ์ด์ค๋ read๋ฉ์๋๋ฅผ ํตํด ์ด๋ป๊ฒ ๊ฐ์ ๋ณํ๋ฅผ ์ ์ ์์๊น? Future Provider ์ Stream Provider๋ ์ํ๊ฐ ๋ณ๊ฒฝ๋ ๋๋ง๋ค ์๋ก์ด ๊ตฌ๋ ์ ์ค์ ํ๋ค. ์ฆ ์ํ๊ฐ ๋ณ๊ฒฝ๋ ๋๋ง๋ค create๋ฅผ ํธ์ถ์ํจ๋ค. ๋ฐ๋ผ์ read๋ฅผ ํตํด ์ด๊ธฐ๊ฐ๋ง ์ฝ์ด์๋ ๋ณ๊ฒฝ๋๋ ๊ฐ์ ํ์ธํ ์ ์๋ค. (read ๋ฉ์๋๋ change notifier ์ ํ์ฅ๋ฉ์๋์ด๊ธฐ ๋๋ฌธ์ ์ด๊ธฐ๊ฐ ์ค์ ๋ ๋๋ง๋ค ๋ณ๊ฒฝ๋๋ ์ ๋ณด๋ฅผ UI์ ์๋์ ๋ฐ์ดํธ๊ฐ ๋๋ค.)
'๐ฆ Flutter' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ๊ณผ Reactive X (0) | 2024.06.03 |
---|---|
Hot Observable & Cold Observable (0) | 2024.06.01 |
Stateless Widget ์ const๋ฅผ ๋ถ์ฌ์ผํ๋ ์ด์ (0) | 2024.05.30 |
flutter_localization depends on flutter_localizations from sdk which depends on intl 0.18.1 ์๋ฌ (2) | 2024.05.30 |
Sliver ์ ๋ํด ์์๋ณด์ (0) | 2024.05.30 |