inflearn logo
강의

講義

知識共有

Vue3パーフェクトマスター:基礎から本番まで - 「本編」

Alert Store 作り

composable과 pinia store - 둘 중 하나를 선택하는 기준

解決済みの質問

1594

wonjinYi

投稿した質問数 4

1

안녕하세요. "Alert Store 만들기" 영상을 보고 의문이 생겨 질문드립니다. 제 생각에는 compasable과 pinia는 유사한 구현방법으로 똑같은 목적을 달성하는 것 같아 보입니다.

 

우선 제가 이해한 내용은 이렇습니다.

강의영상에서는 composable의 형태로 구현했던 alert를 pinia로 재구현 해주셨습니다. 이렇게 상태가 포함되는 로직은 composable보다 pinia로 구현하는 것이 더 적절한가요?

 

pinia로 구현했을 때 성능, 프로젝트 가독성(?) 등의 여러 방면에서 어떤 이점이 있는지 잘 모르겠습니다. 혹시 선생님이나 다른 분께서 알려주실 수 있을까 해서 질문드립니다. 감사합니다.

vue.js vuejs

回答 1

3

gymcoding

안녕하세요 :)

잘 이해하셨어요~!

  • 상태 저장 비즈니스 로직을 재사용 -> Composable

  • 전역 상태 관리 -> Pinia

전역적으로 상태를 관리 해야 할 때는 Pinia를 사용하시면 돼요. 그리고 상태 저장 로직을 재사용 할 때는 Composable 함수를 사용하시면 됩니다.

이 둘은 베타적인게 아니라 상호 보완적일 수 있어요.

예를들면 전역 상태를 관리하는 saveUser 라는 Pinia 함수(actions)가 있고 또 이러한 saveUser를 사용할 때 반드시 필요한 비즈니스 로직이 있다면 useRegisterUser 라는 컴포저블 함수를 만들어서 그 안에서 saveUser(pinia aciton)를 호출하도록 할 수 있겠죠? ^^

한 번 생각해 보시고 그래도 잘 이해가 안된다면 조금 경험을 더 쌓고 다시 이해해 보는것은 어떨까요 👀

그리고 Pinia Vue 상태 관리 라이브러리 입니다. 전역 상태를 관리하기 위해서는 필요한 라이브러리 인데요~! 아래 링크가 도움이 되셨으면 합니다.

감사합니다.

0

wonjinYi

답변주신 내용을 읽자마자 머릿속에 흩어져 있던 것들이 단번에 정리됐습니다. 언급해주신대로 컴포저블과 피니아가 배타적인 것이라고 생각했는데, 이게 더 넓은 생각을 방해하고 있었네요. 자세한 설명 너무너무 감사합니다.

질문드립니다.

0

32

0

unplugin-vue-components 질문드립니다.

0

37

2

강의듣다가 헷갈려서 질문드립니다.

0

31

1

와 짐코딩님 강의 들으면서 느끼는게 많네요.

0

32

1

질문드립니다.

0

32

2

라우터 인스톨 후 실행안됨

1

49

2

코드 자동 포매팅 질문

0

68

2

필터 watchEffect 질문입니다.

0

50

1

json-server 오류가 다른게 뜨네요

0

113

1

미리보기가 안됩니당...

0

69

2

unplugin-vue-components

0

81

2

TypeError 질문

0

52

1

v-model="show" :show="show" 같이 사용?

1

57

1

hash 모드 배포의 필요성?

0

61

2

.eslintrc.cjs 가 없습니다

0

95

2

title,content값이 비어서 저장되는데 제가 혹시 어떤 부분을 잘못 작성했는지 ㅜㅜ 알고싶습니다.

0

98

3

_title_like: "", 문의드려요 해당 값을 설정하면 list가 아에 안나옵니다.

0

64

1

@click.prevent="params._page = pageNum"> 에 .value를 안쓰는 이유가 궁금합니다.

0

71

2

중첩된 컴포넌트 문제

0

75

2

교안에 있는 부분이 아닌가요?

0

109

2

useAxios Proxy(Object) RefImpl

0

113

1

axios timeout

0

328

3

강의와 상관은 없지만, 궁금한 점이 있어 질문드립니다.

0

122

2

컴포넌트 분리 부분에서 오류가 나요ㅠㅠ

0

167

2