簡易的vuex用法,簡易vuex用法

vuex是vue中用于管理全局狀態的一個組件,用于不同組件之間的通信,下面將介紹它的簡單用法

首先安裝vue與vuex

npm install vue
npm install vuex --save

然后創建一個單獨的文件store.vue用來對vuex的處理和使用

import vue from 'vue'
import vuex from 'vuex'
vue.use(vuex)

vuex有以下幾種選項

  • state: Vuex store 實例的根 state 對象
  • mutations:?在 store 上注冊 mutation,處理函數總是接受?state?作為第一個參數(如果定義在模塊中,則為模塊的局部狀態),payload?作為第二個參數(可選)。愛掏網 - it200.com
  • actions:?在 store 上注冊 action。愛掏網 - it200.com處理函數總是接受?context?作為第一個參數,payload?作為第二個參數(可選)。愛掏網 - it200.com
  • getters:?Vuex 允許我們在 store 中定義“getter”(可以認為是 store 的計算屬性)。愛掏網 - it200.com就像計算屬性一樣,getter 的返回值會根據它的依賴被緩存起來,且只有當它的依賴值發生了改變才會被重新計算。愛掏網 - it200.com
  • modules:?包含了子模塊的對象,會被合并到 store。愛掏網 - it200.com
  • plugins:?一個數組,包含應用在 store 上的插件方法。愛掏網 - it200.com
  • strict:?使 Vuex store 進入嚴格模式,在嚴格模式下,任何 mutation 處理函數以外修改 Vuex state 都會拋出錯誤。愛掏網 - it200.com
? 我們今天只用到state,mutations,actions,getters
const state = {
    token: '' // 定義state的初始值,組建中我們可以用$store.state.token來調用
}
const mutations = {
  setToken (state, token) {
    state.token = token || ''
  }
}

我們可以用$store.commit('setToken', 'xxxxxx')來改變state中token的值

const actions = {
  setToken (context) {//這里的context和我們使用的$store擁有相同的對象和方法
    context.commit('setToken');
    //你還可以在這里觸發其他的mutations方法
  },
}

可以使用 $store.dispatch('setToken')?來觸發?action?中的?setToken方法。愛掏網 - it200.comactions里面可以執行異步操作。愛掏網 - it200.com

getters: {
    doneTodos: (state, getters) => {
      return state.todos.filter(todo => todo.done)
    }
  }

getters類似于vue的計算屬性,它的作用是用來派生一些新的狀態,比如我們要把state狀態的數據進行一次映射后者篩選,并把這個狀態返回給組件使用。愛掏網 - it200.com

最后將生成的實例導進main.js

export default new Vuex.Store({
  state,
  mutations,
  actions,
getters })

main.js

import store from './store'
new Vue({
  el: '#app',
  store,
  components: { App },
  template: 'App/>'
})

這樣vuex的功能已經可以用了,如果業務需要,可以慢慢將它們的選項都完善進去

每一次的記錄,都是向前邁進的一步
聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。
發表評論
更多 網友評論0 條評論)
暫無評論

返回頂部

主站蜘蛛池模板: 大胸校花被老头粗暴在线观看| 亚洲欧美中文字幕5发布| 国产综合色在线精品| 日韩精品午夜视频一区二区三区 | ASS日本少妇高潮PICS| 亚洲一区二区日韩欧美gif| 国产不卡一卡2卡三卡4卡5卡在线| 尤物视频在线看| 美女把尿口扒开让男人桶| 91精品国产三级在线观看| 久久国产美女免费观看精品| 免费人成视频在线观看网站| 奇米777在线视频| 日韩黄在线观看免费视频| 香蕉视频在线观看男女| 久久大香香蕉国产| 亚洲熟妇av一区二区三区下载| 国产剧情AV麻豆香蕉精品| 国自产精品手机在线观看视频 | 麻豆安全免费网址入口| 99久高清在线观看视频| 久久中文字幕无码专区| 亚洲人成中文字幕在线观看| 动漫精品一区二区3d| 国产裸体美女永久免费无遮挡| 抽搐一进一出在深一点| 星空无限传媒xk8046| 欧美精品一区二区精品久久 | 男生的肌肌插入女生的肌肌| 丰满大白屁股ass| 18美女扒开尿口无遮挡| www日本xxx| 亚洲AV无码一区二区三区人| 午夜亚洲av日韩av无码大全| 国产成人精品福利色多多| 在厨房里挺进美妇雪臀| 成人18网址在线观看| 成黄色激情视频网站| 日本高清不卡在线| 日韩毛片在线免费观看| 精品人妻系列无码人妻漫画|