flutter store 의 사용이유

HeejinShin·2023년 2월 27일
0

플러터

목록 보기
9/11

Store는 여러개 만들어도 상관 없다.

Store 왜쓰나?

State가 100개면 하나의 class에 보관하는 건 힘들다.
관련 있는 state들을 묶어서 각각 별개의 store로 만들면 나중에 편리할 수 있다.

class Store1 extends ChangeNotifier {
var name = 'john kim';

class Stroe2 extends ChangeNotifier {
var follower = 0;
follower 변경함수들 ~~ 
}

이런 식이다. 지금은 양이 적어서 굳이 나눌 필요가 없다. 혹은 당연히 너무 길어보이면 다른 파일로 빼서 한다. \
근데 changeNotifierProvider()안에 store 등록한다고 했는데
Store 가 여러개면 등록을 어떻게 하나

Store가 많은 경우 store 등록하는 법

실은 changeNotifierProvieder()를 store 갯수만큼 2중첩, 3중첩 하면 된다. 근데 그걸 쉽게 바꿔주는 문법도 있는데 multiprovider 로 바꿔서 감싸면 된다.

 MultiProvider (
 prooviders: [
 ChangeNotifierProvider (create: (c) => Store1()
 CHangeNotifierProvider(create: (c) 
 ]
 childer: MAterial~ 

그 안에는 changeNotifier를 여러개 사용한다.
우너하는 만큼 등록 가능

그럼 이제 똑같이 모든 자식 위젯들은 store1, store.에 있던 state를 이용 가능하다. 이렇게 쓰고 store 갯수 많아지면 다른파일로 뺴는 게 좋곘따

provider 쓰면 ge t 요청은?

get , profiele 서버 get, 데이터 받아옴, state 에 저장.
hhttp,.get

  1. Profile 의 initState안에서 get 요청 날림

  2. Profile의 initState안에서 state 수정함수를 작동시킴

    하지만 state 관련된 모든 로직들은 store 안에 보관하는게 수정이 쉬움

    ```

    class Store1 extends ChangeNotifier {
    var profileImage = [];

       getData() async {
       	var result = await http.get~ 
           var result2 = jsonDecode~ 
           profileImage = result2
           notifylisteners();
     ```
     
     
profile
Studying Go Lang

0개의 댓글