axios - this$store 函数未定义
问题描述
我正在尝试使用 vuex 的商店进行一些 API 调用,但是在安装 vuex 后,将商店导入我的文件并遵循其他堆栈溢出答案,例如确保安装了 vuex,如果我使用“Vuex.Store”导出我的商店文件和等,但我的 loadCalls 功能仍然无法正常工作。
这是我得到的错误:
this.$store.loadCalls is not a function
这是我的函数以及我尝试调用它的方式,它在我的 store.js 文件的 ACTIONS 部分中声明。
loadCalls() {
axios
.get("/some/calls")
.then(res => {
console.log(res)
});
},
我尝试在beforeMount()
我的组件加载时使用它:
beforeMount(){
this.$store.loadCalls();
}
我在这里做错了什么?
解决方案
如果您定义了这样的操作:
actions: {
loadCalls() {
// ...
}
}
然后你会这样称呼它:
this.$store.dispatch('loadCalls');
操作不会直接公开,您可以使用dispatch
.
https://vuex.vuejs.org/guide/actions.html#dispatching-actions
推荐阅读
- android - 根据 Firebase 中的日期对事件进行排序
- ruby-on-rails - Rails 如何运行自定义查询并返回地图数组
- php - 如何在 PHP 中进行某些操作后检查对象是否发生了变异?
- java - 适合任务的设计模式
- sql - 枢轴式排序 - SQL Oracle
- javascript - 如何从选择元素 ID 中获取 select2 的类 .select2-search?
- javascript - Ionic __Azure AD 身份验证错误:用户取消了流程
- php - 如何:使用 PHP 在 Azure 搜索中进行分页搜索
- java - 解析显示错误日期的日期
- java - java.util.logging 不会记录到文件