Vue.js 无法获取Vuex变异或操作以将数据传递到状态

Vue.js 无法获取Vuex变异或操作以将数据传递到状态,vue.js,vuejs2,vuex,Vue.js,Vuejs2,Vuex,我无法获得将数据传递到应用程序状态的突变或操作。尽管我花了几个小时阅读Vuex文档,但我甚至不确定我给他们打的电话是否正确 我开始创建一个变种,当@click事件被触发时,它只是简单地更新我的状态,但当它不起作用时,我尝试了一个操作,得到了相同的结果:什么都没有 我如何调用操作的示例: <div v-for="(data, index) in dataList" :key="index"> <div @click="updateDataSomewhereElse(data)

我无法获得将数据传递到应用程序状态的突变或操作。尽管我花了几个小时阅读Vuex文档,但我甚至不确定我给他们打的电话是否正确

我开始创建一个变种,当@click事件被触发时,它只是简单地更新我的状态,但当它不起作用时,我尝试了一个操作,得到了相同的结果:什么都没有

我如何调用操作的示例:

<div v-for="(data, index) in dataList" :key="index">
  <div @click="updateDataSomewhereElse(data)">  // action called here
    // do some other stuff
  </div>
</div>
我的行为和变异示例:

// state code
mutations: {
  updateStateData(state, data) {
    state.data = data;
  }
},
actions: {
  setData({commit}, data) {
    commit('updateStateData', data);
  }
}
不用说,当我的动作被调用时,我希望我的状态会随着我的变异而更新,但我什么都没有得到

我做错了什么

编辑-更多详细信息:

我的初始状态示例:

state: {
  data: 'something'
}
从my main.js:

import Vue from 'vue';
import App from './App.vue';
import router from './router';
import store from './store';

new Vue({
  router,
  store,
  render: h => h(App),
}).$mount('#app');

我知道它不会在我的Vue开发工具中返回任何内容,因为它只显示我的初始状态,我无法从那里执行手动提交/分派。此外,我的方法和我的操作中的console.log语句都不会被触发。我已使用
Vue.use(Vuex)将我的store.js文件连接到Vue,因此这不是连接问题。

我通过简单地执行以下操作解决了此问题:

<div v-for="(data, index) in dataList" :key="index">
  <div>
    <span @click="updateDataSomewhereElse(data)">do some other stuff</span>
  </div>
</div>

做些别的事情

我不确定这是为什么或如何回答,但我现在正在更新我的状态。

我通过简单地执行以下操作修复了此问题:

<div v-for="(data, index) in dataList" :key="index">
  <div>
    <span @click="updateDataSomewhereElse(data)">do some other stuff</span>
  </div>
</div>

做些别的事情

我不确定这是为什么或如何回答的,但我现在正在更新我的状态。

您是否可以仔细检查以下内容:-存储已添加到Vue实例-通过向方法添加控制台日志进行调试以验证是否调用了该方法-调试以验证是否调用了该操作如何验证问题?你预期会发生什么?实际发生了什么?请同时提供您的初始
状态
我怀疑这是的副本,但将等待确认您是否有
Vue。在任何地方使用(Vuex)
?是,我的store.js文件中有它。您是否可以仔细检查以下内容:-store已添加到Vue实例-通过向方法添加控制台日志以验证是否调用了调试-debug以验证是否调用了操作如何验证问题?你预期会发生什么?实际发生了什么?请同时提供您的初始
状态
我怀疑这是的副本,但将等待确认您是否有
Vue。在任何地方使用(Vuex)
?是的,我的store.js文件中有它。