>  기사  >  웹 프론트엔드  >  uniapp에서 vuex를 사용하는 방법

uniapp에서 vuex를 사용하는 방법

下次还敢
下次还敢원래의
2024-04-06 03:45:25954검색

UniApp에서 Vuex를 어떻게 사용하나요? Vuex 종속성을 설치합니다. 애플리케이션 상태 및 로직을 관리하기 위해 Vuex 스토리지를 생성합니다. this.$store를 통해 구성 요소 내에서 Vuex 저장소에 액세스합니다. 매핑 도우미를 사용하여 Vuex 작업과 상태를 구성 요소에 바인딩합니다. 대규모 애플리케이션의 경우 Vuex 스토리지를 여러 모듈로 분할할 수 있습니다.

uniapp에서 vuex를 사용하는 방법

UniApp에서 Vuex를 사용하는 방법

소개
Vuex는 Vue.js 애플리케이션에서 애플리케이션의 상태와 로직을 중앙에서 관리할 수 있는 상태 관리 도구입니다. 크로스 플랫폼 개발 프레임워크로서 UniApp은 Vuex 사용도 지원합니다.

Vuex 설치
먼저 다음 명령을 사용하여 Vuex 종속성을 설치합니다.

<code class="bash">npm install vuex --save</code>

또는

<code class="bash">yarn add vuex</code>

Vuex 스토어 만들기
다음으로 애플리케이션의 상태와 로직을 포함할 Vuex 스토어를 만듭니다.

<code class="javascript">// store/index.js
import Vuex from 'vuex'
import Vue from 'vue'

Vue.use(Vuex)

const store = new Vuex.Store({
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  },
  actions: {
    incrementAsync ({ commit }) {
      setTimeout(() => {
        commit('increment')
      }, 1000)
    }
  },
  getters: {
    getCount (state) {
      return state.count
    }
  }
})

export default store</code>

컴포넌트에서 Vuex 사용
컴포넌트에서 Vuex 저장소에 액세스하려면 this.$store를 사용할 수 있습니다. this.$store

<code class="javascript">// App.vue
<template>
  <div>{{ this.$store.state.count }}</div>
  <button @click="increment">Increment</button>
  <button @click="incrementAsync">Increment Async</button>
</template>

<script>
import { mapActions } from 'vuex'

export default {
  methods: {
    ...mapActions([
      'increment',
      'incrementAsync'
    ])
  }
}
</script></code>

模块化 Vuex 存储
对于大型应用程序,将 Vuex 存储拆分为多个模块很有用。每个模块都可以管理其自己的状态和逻辑。

<code class="javascript">// store/index.js
import Vuex from 'vuex'
import Vue from 'vue'
import counter from './modules/counter'

Vue.use(Vuex)

const store = new Vuex.Store({
  modules: {
    counter
  }
})

export default store</code>
<code class="javascript">// store/modules/counter.js
export default {
  state: {
    count: 0
  },
  mutations: {
    increment (state) {
      state.count++
    }
  },
  actions: {
    incrementAsync ({ commit }) {
      setTimeout(() => {
        commit('increment')
      }, 1000)
    }
  },
  getters: {
    getCount (state) {
      return state.count
    }
  }
}</code>

提示

  • 在应用程序启动时创建 Vuex 存储。
  • 从组件中使用 this.$store 访问 Vuex 存储。
  • 通过使用映射助手(例如 mapActionsmapStaterrreee
  • Modular Vuex Storage
대규모 애플리케이션의 경우 Vuex 스토리지를 여러 모듈로 분할하는 것이 유용합니다. 각 모듈은 자체 상태와 논리를 관리할 수 있습니다. 🎜rrreeerrree🎜🎜Tip🎜🎜
    🎜애플리케이션 시작 시 Vuex 스토리지를 생성하세요. 🎜🎜구성 요소에서 Vuex 저장소에 액세스하려면 this.$store를 사용하세요. 🎜🎜mapActionsmapState와 같은 매핑 도우미를 사용하여 Vuex 작업과 상태를 구성 요소에 바인딩합니다. 🎜🎜Vuex 스토리지는 필요에 따라 여러 모듈로 분할될 수 있습니다. 🎜🎜

위 내용은 uniapp에서 vuex를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.