2017-08-11 66 views
1

我是vue.js和vuex的新手。當一個特定的數據在狀態中可用時,我有一個組件需要分派一個動作。我怎樣才能做到這一點。從vuejs組件觀看vuex狀態變化

實施例:

export default { 
    name: 'MyComponent', 
    computed: { 
     targetItem() { 
     return this.$store.getters.getTarget(this.$route.params.id); 
     } 
    } 
} 

在上述我想分派在商店一個新的動作時targetItem具有值的例子。這是這樣我就可以觸發通過vuex動作一個Ajax請求收集更多的數據約targetItem

感謝

+0

什麼都有,你已經試過,有什麼不符合你的預期? – thanksd

+0

你的用例對我來說很不清楚。你是否在尋找類似於[小提琴](https://jsfiddle.net/awolf2904/0txhcvae/)的東西?請在您的問題中添加更多詳細信息。你打算怎麼處理這個行爲?它發送一個Ajax請求,它是否改變狀態等? – AWolf

回答

0

我最終發現,工作

export default { 
    name: 'MyComponent', 
    computed: { 
     targetItem() { 
     return this.$store.getters.getTarget(this.$route.params.id); 
    } 
    }, 
    watch: { 
     shop (newVal, oldVal) { 
     if(!!newVal && !oldVal) { 
      const {targetItem} = this;   
      this.$store.dispatch('ACTION_NAME',{targetItem}); 
     } 
     } 
    } 
} 

感謝解決