기본 Vue 인스턴스, Vuex 또는 mixin을 사용할 시기를 선택하십시오.
Vue에서는 일반적으로 사용되는 변수와 메서드를 기본 Vue 인스턴스에 저장할 수 있습니다.이렇게 하면 다른 구성 요소가 이 데이터에 액세스할 수 있습니다.
new Vue({
data: {
name: 'John'
}
});
상태 관리에 Vuex를 사용하는 경우 이 데이터를 여기에 저장할 수도 있습니다.
const store = new Vuex.Store({
state: {
name: 'John'
}
}
제가 알기로는 Vue mixin도 동일한 기능을 제공합니다(모든 컴포넌트가 이 공통 공유 데이터에 글로벌하게 액세스할 수 있습니다).
Vue.mixin({
data() {
return {
name: 'John'
};
}
});
궁금한 점은 Vuex 또는 글로벌 믹스인을 통해 기본 Vue 인스턴스를 언제 사용해야 합니까?
Vuex
매우 고도의 스테이트 매니지먼트 솔루션입니다.Unidirectional/one-way
데이터 플로우 아키텍처컴포넌트간에 데이터를 고도의 방법으로 공유할 필요가 있는 경우에 사용합니다.부작용도 처리할 필요가 있습니다.라고도 말할 수 있다.Vuex
의 미화된 구현에 불과하다Vue
사례.
Vue 인스턴스, 즉 Vue 구성 요소는 UI 구성 요소를 모델링하기 위한 것입니다.네, State Manager 및 글로벌 이벤트 버스 역할도 할 수 있습니다.단, 소규모 앱 및 POC에서만 사용하십시오.그렇지않으면,Vuex
항상 옳은 선택입니다.
그래서 말인데Mixins
국가 관리 메커니즘이 아닙니다.이는 다른 컴포넌트 간에 재사용 가능한 기능을 공유하기 위한 것입니다.일반적으로 믹스인을 사용하여data()
좋은 디자인은 아니지만요.또한 해당 데이터에 대해 작동해야 하는 몇 가지 방법이 있어야 합니다.이것이 전체 Vue 생태계에서 믹스인이 적합한 부분입니다.
언급URL : https://stackoverflow.com/questions/54068494/when-to-use-the-base-vue-instance-vuex-or-mixin
'programing' 카테고리의 다른 글
nuxt 레이아웃 함수로 localStorage 데이터 가져오기 (0) | 2022.07.17 |
---|---|
초보자에게 C 포인터(선언 대 단항 연산자)를 어떻게 설명합니까? (0) | 2022.07.17 |
C는 왜 이렇게 빠를까요?다른 언어는 왜 그렇게 빠르거나 빠르지 않을까요? (0) | 2022.07.17 |
정규 표현에서 "any character"를 일치시키는 방법은 무엇입니까? (0) | 2022.07.17 |
Vue 라우터는 초기 로딩 시 항상 느리게 로드된 모듈을 로드합니다. (0) | 2022.07.17 |