次のようなvuexストアがあります。
import spreeApi from '../../gateways/spree-api'
// initial state
const state = {
products: [],
categories: []
}
// mutations
const mutations = {
SET_PRODUCTS: (state, response) => {
state.products = response.data.products
commit('SET_CATEGORIES')
},
SET_CATEGORIES: (state) => {
state.categories = state.products.map(function(product) { return product.category})
}
}
const actions = {
FETCH_PRODUCTS: (state, filters) => {
return spreeApi.get('products').then(response => state.commit('SET_PRODUCTS', response))
}
}
export default {
state,
mutations,
actions
}
SET_CATEGORIES
Mutation:から Mutation:を呼び出したいのですがSET_PRODUCTS
、これによりエラーが発生します:
projectFilter.js:22 Uncaught (in promise) ReferenceError: コミットが定義されていません(…)
これを行う正しい方法は何ですか。store.commit
とを試しthis.commit
ましたが、これらも同様のエラーを出しました。