真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vuex中怎么利用state監(jiān)聽數(shù)組變化

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)vuex 中怎么利用state監(jiān)聽數(shù)組變化,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、甘德網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為甘德等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const state = {
 messArray:[]
}

const mutations = {
 modifyArray(state, obj){
 state.messArray=obj.messArray
 // Vue.$set(this,this.messArray,[...obj.messArray])
}

const actions={
 modifyArr(context,obj){
 context.commit('modifyArray',obj)
 },
}
export default new Vuex.Store({
 state,
 mutations,
 actions
})

然后在組建的data中,通過mapState映射過去:

//在使用事前必須引入這個(gè)
import { mapState, mapGetters, mapMutations, mapActions } from 'vuex'

data() {
  return {
  ...mapState(["messArray"]),
  }
 }

然后在watch中設(shè)置了監(jiān)聽:

watch:{
  messArray: function(val){
  console.log("watch ChildA.vue "+val)
  }
}

這個(gè)時(shí)候問題就出來了,雖然數(shù)組修改了,但是watch就是監(jiān)聽不到。

解決辦法

在我搜索了一些網(wǎng)上的辦法之后,發(fā)現(xiàn)大部分我都用不來,最后只能巧妙的通過computed和getter解決了這個(gè)問題。

給剛才的store.js添加一個(gè)getter

const getters = {
 messArray_get:state=>state.messArray,
}

然后在要監(jiān)聽變化的組件中的computed中添加如下代碼:

 ...mapGetters(['messArray_get']),

然后在watch中這樣寫

 watch:{

  messArray_get : function(val){
   console.log("messArray_get "+val)
  }

 }

vuex 中怎么利用state監(jiān)聽數(shù)組變化

vuex 中怎么利用state監(jiān)聽數(shù)組變化

上述就是小編為大家分享的vuex 中怎么利用state監(jiān)聽數(shù)組變化了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前標(biāo)題:vuex中怎么利用state監(jiān)聽數(shù)組變化
本文URL:http://weahome.cn/article/jsoggi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部