vuexの使用中にcommit未定義エラーが発生しました


理由:
  • 書き間違い
  • もちろん、この間違いはあなたの単語の書く間違いではありません
  • あなたのこの方法にはcommitという方法がないからです.
  • どうしてないの?実はそれはありますが、contextの中には
  • しかありません.
  • 直接commit(xxx)を書いたのかもしれません
  • エラー表示プロセス:
    まず呼び出しましょう
    <div><input type="button" @click="$store.dispatch('listMore')" value="    "></div>
    
  • なぜdispatchなのか、commitを使っているのではないでしょうか.
  • これがactionsでmutationsのメソッドを呼び出す
  • です.
    コード:
    actions = {
         login(context){
                commit("CHANGE_USERNAME")
            }
        }
    };
    
  • はパラメータを受け入れていることを見ることができます.このパラメータはデフォルトで伝達されており、
  • を変更することはできません.
  • commitはcontextの中にありますが、
  • と直接書いています.
    正しく呼び出すと、次のように書くことができます.
    actions = {
         login(context){
                context.commit("CHANGE_USERNAME")
            }
        }
    };
    

    または、
    actions = {
         login({commit}){  //  { }
                commit("CHANGE_USERNAME")
            }
        }
    };