2017-08-31 7 views

答えて

1

いいえ、コミット後に突然変異を停止することはできません。

アプリケーションが特定の状況でのみコミットを防止する必要がある場合、あなたはアクションでそのロジックを置くことができます:this.$store.dispatch('increaseFoo')を経由してアクションを派遣する際

mutations: { 
    INCREASE_FOO(state) { 
    state.foo++; 
    } 
}, 
actions: { 
    increaseFoo({commit}) { 
    if (someCondition) { 
     commit('INCREASE_FOO'); 
    } 
    } 
} 

その後、コミットは、指定の下でのみ発生します調子。

+0

突然変異が同じ検査を実行するのを止めるにはどうすればよいですか?私は一般的にVuexを使用しません。それができるように見えます。 – Bert

+0

何もありません。それはシナリオ(私はOPのシナリオで推測している)に依存します。しかし、私は可能な限り単純な変異を保つのが好きです。チェックは、 'dispatch'呼び出しの周りにもあります。 – thanksd

+0

私は、Vuexのようなアプローチのほうがストア内のロジックを維持するアクションだと思います。いいですね。 – Bert

関連する問題