最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vuex state中的數(shù)組變化監(jiān)聽實例

 更新時間:2019年11月06日 09:51:10   作者:超神冉  
今天小編就為大家分享一篇vuex state中的數(shù)組變化監(jiān)聽實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

前言

首先,因為我有一個需求就是vue組件中有一組多選框,選中多選框的內(nèi)容,要在另一個組件中進(jìn)行視圖更新,這個就設(shè)計的兄弟組件之間的通信了,兄弟組件之前通信我首先選用的vuex這個解決辦法。

問題

vuex的state用來放數(shù)據(jù),我就把數(shù)組放在了vuex中,然后設(shè)置了修改的函數(shù)。最終store.js中的代碼如下:

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映射過去:

//在使用事前必須引入這個
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)
  }
}

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

解決辦法

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

給剛才的store.js添加一個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中的數(shù)組變化監(jiān)聽實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談vue后臺管理系統(tǒng)權(quán)限控制思考與實踐

    淺談vue后臺管理系統(tǒng)權(quán)限控制思考與實踐

    這篇文章主要介紹了淺談vue后臺管理系統(tǒng)權(quán)限控制思考與實踐,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • 通過npm或yarn自動生成vue組件的方法示例

    通過npm或yarn自動生成vue組件的方法示例

    這篇文章主要介紹了通過npm或yarn自動生成vue組件的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • vue項目如何實現(xiàn)ip和localhost同時訪問

    vue項目如何實現(xiàn)ip和localhost同時訪問

    這篇文章主要介紹了vue項目如何實現(xiàn)ip和localhost同時訪問,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue取消Axios發(fā)出的請求

    Vue取消Axios發(fā)出的請求

    axios 是一個基于 promise 的 HTTP 庫,可以用在瀏覽器和 node.js 中。首先需要知道:axios不是一種新的技術(shù)。axios 是一個基于Promise 用于瀏覽器和 nodejs 的 HTTP 客戶端,本質(zhì)上也是對原生XHR的封裝,只不過它是Promise的實現(xiàn)版本,符合最新的ES規(guī)范
    2022-09-09
  • vue中v-model的應(yīng)用及使用詳解

    vue中v-model的應(yīng)用及使用詳解

    v-model用于表單數(shù)據(jù)的雙向綁定,其實它就是一個語法糖。這篇文章主要介紹了vue中v-model的應(yīng)用,需要的朋友可以參考下
    2018-06-06
  • vue實現(xiàn)周日歷切換效果

    vue實現(xiàn)周日歷切換效果

    這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)周日歷切換效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • el-table嵌套el-popover處理卡頓的解決

    el-table嵌套el-popover處理卡頓的解決

    本文主要介紹了el-table嵌套el-popover處理卡頓的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • vue directive全局自定義指令實現(xiàn)按鈕級別權(quán)限控制的操作方法

    vue directive全局自定義指令實現(xiàn)按鈕級別權(quán)限控制的操作方法

    這篇文章主要介紹了vue directive全局自定義指令實現(xiàn)按鈕級別權(quán)限控制,本文結(jié)合實例代碼對基本概念做了詳細(xì)講解,需要的朋友可以參考下
    2023-02-02
  • vue+echarts圖表使用的問題記錄

    vue+echarts圖表使用的問題記錄

    由于在項目中需要對數(shù)據(jù)進(jìn)行可視化處理,也就是用圖表展示,眾所周知echarts是非常強(qiáng)大的插件,所以這篇文章主要給大家介紹了關(guān)于vue+echarts圖表使用的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • vue5中的事件修飾符(style)和template

    vue5中的事件修飾符(style)和template

    這篇文章主要介紹了vue5中的事件修飾符(style)和template,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04

最新評論

奉新县| 谷城县| 乡城县| 巴马| 集安市| 崇明县| 丰台区| 紫金县| 阿拉善左旗| 贡觉县| 闵行区| 常熟市| 金阳县| 施秉县| 山丹县| 阿拉善左旗| 大余县| 衡阳市| 临澧县| 湖南省| 南部县| 大埔县| 景洪市| 临洮县| 江孜县| 惠水县| 孝感市| 邢台市| 商城县| 龙川县| 安图县| 阿克| 湟源县| 始兴县| 开封县| 长沙市| 延庆县| 孟州市| 互助| 平阳县| 河间市|